Convertir un fichier xlsx en csv avec des guillemets

Fermé
rayan-13 Messages postés 1 Date d'inscription dimanche 26 janvier 2014 Statut Membre Dernière intervention 26 janvier 2014 - 26 janv. 2014 à 23:21
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 27 janv. 2014 à 17:05
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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
27 janv. 2014 à 15:38
Bonjour,

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

A+
0
merci pour ta réponse mais j'ai 126 fichiers donc ça sera difficile de les parcourir tous
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
27 janv. 2014 à 15:49
Re,

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

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

Posez votre question
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
27 janv. 2014 à 16:03
question: vos fichiers csv existent deja ou vous pouvez les recreer sans fin
0
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 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
27 janv. 2014 à 16:24
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
c'est déjà fait
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
27 janv. 2014 à 17:05
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