Convertir un fichier xlsx en csv avec des guillemets

rayan-13 Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -  
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   -
bonsoir ;

j'ai une macro en vbs pour convertir un fichier xlsx en csv ,mais je souhaite rajouter des guillemets a c'est champs avec cette macro

Sub Placeoweb_XLS2CSV_OneFileBySheet()

Application.DisplayAlerts = False
Application.ScreenUpdating = False
For Each feuilleEnCours In ThisWorkbook.Sheets
feuilleEnCours.Select
feuilleEnCours.Copy
ActiveWorkbook.SaveAs Filename:="C:\placeoweb.com.xls2csv." & feuilleEnCours.Name & ".csv", FileFormat:=xlCSV, CreateBackup:=False, local:=True
ActiveWorkbook.Close SaveChanges:=False
Next
Application.ScreenUpdating = True
Application.DisplayAlerts = True

MsgBox ("Exportation terminée, retouvez vos fichier à la racine dans le C:\")

End Sub




merci pour votre aide
A voir également:

9 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Le plus simple est de modifier les fichiers CSV genere par votre macro.

A+
0
rayan-13
 
merci pour ta réponse mais j'ai 126 fichiers donc ça sera difficile de les parcourir tous
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

Si, car il n'y pas d'autre moyen. Mais cela se fera par du code VBA, pas a la main !!!
0
rayan-13
 
c pas grave merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
question: vos fichiers csv existent deja ou vous pouvez les recreer sans fin
0
rayan-13
 
en faite voila je t'explique bien les choses
j'ai utiliser cette macro pour convertir une centaine de fichiers excel en csv
sauf que les résultats de la conversion (c'est pas ca que je veux) je cherche a rajouter sur les champs de mon classeur les guillemets ""
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

Ok, les fichiers existent et sont sous la racine C:. Il faudra les mettres dans un repertoire et vous mettrez le fichier excel que je vais vous donner dans ce repertoire.

A+
0
rayan-13
 
c'est déjà fait
0
f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Re,

code a mettre dans un module excel: modifiez les repertoires

Sub modif_csv()
Dim Buffer, Buffer1, Tableau

Close
'repertoire fichiers d'origines
repcsv = "D:\_atest\"
'repertoire fichiers modifies
repcsvmod = "D:\_mod\"
'positionnement sur repertoire fichier origine
ChDir (repcsv)
'liste 1er fichier csv
FichierCSV = Dir(repcsv & "*.csv")
'boucle tant que fichier csv trouve
Do While FichierCSV <> ""
'fichier CSV de base
Open repcsv & FichierCSV For Input As #1
'fichier CSV final
Open repcsvmod & FichierCSV For Output As #2
'boucle lecture fichier
Do While Not EOF(1)
Line Input #1, Buffer
'mise en tableau infos
Tableau = Split(Buffer, ";")
Fin = UBound(Tableau)
'boucle reecriture infos avec "
For Point = 0 To Fin
Tableau(Point) = Chr(34) & Tableau(Point) & Chr(34)
Next Point
'ecriture ligne
Buffer1 = Join(Tableau, ";")
' ecriture fichier modifie
Print #2, Buffer1
Loop
'fermeture des fichiers ouverts
Close
'liste fichier suivant
FichierCSV = Dir
Loop
End Sub
0