Créer macro importé un .csv dans excel [Résolu] - VB/VBA/VBS - Programmation
Marsh Posté le 30-05-2007 à 13:36:51
Bonjour :
Sub supprcaract()
dim A as integer, NbLine as integer
with thisworkbook.worksheets(1) 's'il s'agit bien de la Feuil1
NbLine=.cells(65536,1).end(xlup).column 'si la colonne 1 est concernée
for A=1 to nbline 'si la première cellule est en ligne 1
.cells(A,1)=replace(.cells(A,1),"M-" ) 'on remplace les 2 caractères
'par... rien, pour les supprimer
if .cells(A,1)=.cells(A,2), then
.cells(A,3)="Ok"
else
.cells(A,3)="Mauvais"
end if
next A
end with
end sub
Marsh Posté le 30-05-2007 à 13:38:44
Correction :
Sub supprcaract()
dim A as integer, NbLine as integer
with thisworkbook.worksheets(1) 's'il s'agit bien de la Feuil1
NbLine=.cells(65536,1).end(xlup).row 'si la colonne 1 est concernée
for A=1 to nbline 'si la première cellule est en ligne 1
.cells(A,1)=replace(.cells(A,1),"M-" ) 'on remplace les 2 caractères
'par... rien, pour les supprimer
if .cells(A,1)=.cells(A,2), then
.cells(A,3)="Ok"
else
.cells(A,3)="Mauvais"
end if
next A
end with
end sub
Attention ce code ne fonctionne que si le fichier .csv est déjà ouvert et se présente sous la forme excel (cad avce des cellules et non pas des séparateurs type "," ou ";" )
Marsh Posté le 30-05-2007 à 13:39:54
Correction :
Sub supprcaract()
dim A as integer, NbLine as integer
with thisworkbook.worksheets(1) 's'il s'agit bien de la Feuil1
NbLine=.cells(65536,1).end(xlup).row 'si la colonne 1 est concernée
for A=1 to nbline 'si la première cellule est en ligne 1
.cells(A,1)=replace(.cells(A,1),"M-","" ) 'on remplace les 2 caractères
'par... rien, pour les supprimer
if .cells(A,1)=.cells(A,2), then
.cells(A,3)="Ok"
else
.cells(A,3)="Mauvais"
end if
next A
end with
end sub
Marsh Posté le 30-05-2007 à 13:50:27
ahah! Merci!
EDIT:
Désolé j'ai pas actualisé et vu tes corectifs. Je test ca merci!
Marsh Posté le 30-05-2007 à 13:59:30
Alors il me disait erreur de syntaxe sur cette ligne
If .Cells(A, 1) = .Cells(A, 2), then
J'ai cherché un peu (un peu ) et en mettant ceci ca marche impec
If .Cells(A, 1) = .Cells(A, 2) Then
Marsh Posté le 30-05-2007 à 14:03:01
Une autre approche, à adapter
|
Marsh Posté le 30-05-2007 à 14:12:52
Merci kiki29. Je modifie un peu le code de aprilthe5ith et je regarde ton code qui visiblement lui est pour inporter le .csv
Marsh Posté le 30-05-2007 à 14:25:45
Bon coupure de courant dans l'entreprise (...) je reboot j'essay ton code kiki29 et là miracle c'est exactement ca qui me falé! J'aurais juste 2 ou 3 truk a modifier pour les besoins spécifique qu'on aura et ca sera parfais!
Un grand merci!
Marsh Posté le 30-05-2007 à 12:59:02
Bonjour,
J'aurais besoin de créer dans un classeur excel un macro et un boutton permettant d'importer les données contenu dans un fichier .csv . Dans ce .csv il y a 2 colonnes et des centaines voir milliers de lignes. Dans ces colonne (on va dire A et B) je dois supprimer les 2 premiers caractaires (qui seront toujours " M- " ) de la premiére colonne. Ensuite je dois faire un autre boutton pour les comparés (les 2 colonnes doivent être identique pour être accepté)
En language je connais que le c++ (est encore c'est légé, 1er année de bts iris ). Donc là je rame comme pas possible. J'ai pas trouvé un code qui corespond a ce que je cherche à faire.
Même si vous me donné pas le code exacte, une petite aide serait la bienvenue .
Je vous met un petit exemple au cas ou je me suis mal exprimé.
Le contenu du .csv
Le résultat souhaité en cliquant sur le bouton "import .csv" puis "comparé codes"
Voilà j'esper que vous allez pouvoir m'aider
Message édité par barca-powa le 30-05-2007 à 16:45:59