vba excel vers application delphi

fred014

Habitué
bonjour,
j'ai ceci que j'ai dans une macro vba excel
[cpp]
Dim cell As Range
Const limit As Integer = 31
For Each cell In Range("E2:G100") 'parcourir cette plage
If Len(cell) > limit Then
MsgBox "la cellule comporte : " & Len(cell.Text) & " caractères " 'permet de connaitre le nombre de caractère dans la cellule
cell.Interior.ColorIndex = 27 'met la cellule en couleur jaune
End If
Next
[/cpp]
maintenant que je débute en delphi, j'ai un peu de mal à trouver les bon tuto sur le net.
Ma question est:
est il possible de faire la même chose en delphi et comment :??: :??: :??:

merci d'avance mais je continu quand même à chercher sur les forum
 

zeb

Modérateur
Attends, STOP !!

Ta macro en VBA, tu l'exécutes en fait dans un contexte particulier, celui de l'application Excel. Donc Range("E2") par exemple à un sens.

Pour Delphi, tu veux compiler un programme indépendant de Excel. Comment veux-tu que Range("E2") (ou un autre truc d'Excel) ait un sens dans ton programme.

Bon ceci dit, oui il est possible de le faire sous Delphi parce que on peut tout faire avec Delphi. Mais il y a du boulot :

Une solution est de piloter Excel via OLE. Les mots-clefs qu'il faut connaître sont :

■ CreateOleObject
■ Excel.Application
 

fred014

Habitué
merci pour ta réponse.
je sais deja ouvrir un classeur excel et récuperer un fichier csv et faire autofit dans les colonnes qui m interessent.
mais maintenant il me faut parcourir les cellules comme dans le post precedent avec la fonction Len comme vba ( exemple ci-dessus).
merci d'avance.
 

zeb

Modérateur
For each n'existe pas en Pascal.
Len existe en Pascal, c'est la fonction Length.
 

fred014

Habitué
merci pour ta réponse, mais je le sais déjà !!!!!
en fait ma question reste sans réponse car celle-ci est :
comment transposer mon code VBA excel en delphi ????
 

KangOl

Grand Maître
je comprend pas trop ce que tu cherches a faire

c'est totalement différent et ca dépend du composant que tu utilises

edit : tab owned [:meske]
 

fred014

Habitué
OK,
l'application que je cherche à finaliser ( c'est le première que je crée ),ouvre excel pour récuperer à l'aide d'une boite de dialogue
un fichier csv, que j'ouvre et c'est là dans les colonnes E,F,G que je fais autofit et qu'il faut que je parcour [ range(E2:G100)]
avec la fonction LENGHT pour me dire quelles sont les cellules comportant plus de 31 caractères .et enfin toujours a l aide d'un boite de dialogue enregistrer sous je fini mon application.

Donc ce que je cherche à faire :
aprés avoir ouvert mon fichier csv, en cliquant sur un bouton cela me fait autofit les colonnes E,F,G et parcours celle-ci pour me dire s'il y a des cellules comportant plus de 31 caractères

Voilà ce que je cherche à terminer pour mon premier projet en delphi !!!!!!!!

merci pour vos réponse et votre patience :hello:
 

zeb

Modérateur
Ben il faut apprendre OLE/Automation/Excel.
C'est du microsoft-spécifique, même si Delphi peut le faire.

Va voir du côté de MSDN.
 

fred014

Habitué
ouai boffff.
si tu pouvait me mettre sur la voie sa serait plus simple pour moi car la je galere depuis pas mal de jour rien que pour 3 ou 4 ligne de commande.
merci
 

KangOl

Grand Maître
non, si tu sais pas chercher par toi meme, tu n'arriveras jamais a rien dans l'informatique...
 

fred014

Habitué
merci c sympa !!!!!!!
si je viens ici c'est que j'ai cherché (et je continu toujours) et que les forum sur les quels je tombe ne me donne rien !!!!!
 

matrixise

Nouveau membre
Effectivement tu dois utiliser OLE/Automation et Excell pour pouvoir réaliser ce que tu veux.

Maintenant, je suppose que tu ne connais pas Developpez.com et aller voir la section FAQ de Delphi.

Comme le disait KangOl, il te suffit de faire une recherche sur Google.

Maintenant un truc plus marrant, pq ne pas utiliser ton fichier CSV et tout simplement le parser en Delphi directement ?

Enfin, c toi qui voit.
 

fred014

Habitué
merci pour ta réponse,
je connais Developpez.com par contre que veux tu dire par le parser en delphi directement ?
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 131
Messages
6 717 954
Membres
1 586 382
Dernier membre
alejandrooo
Partager cette page
Haut