Lorsque vous enregistrez/ouvrez des fichiers CSV dans Excel, le séparateur par défaut est un point-virgule (;), car j’ai besoin que ce soit une virgule (,). C'est-à-dire Comment faire en sorte qu'Excel interprète la virgule comme un séparateur par défaut dans les fichiers CSV? ).
Cependant, après avoir modifié le séparateur de liste dans ces paramètres, Excel continue de sauvegarder les fichiers CSV avec un point-virgule. Est-ce parce qu'Excel a été installé alors que mon séparateur de liste était défini en tant que point-virgule? ou y a-t-il un autre paramètre qui me manque ici?
Merci d'avance.
J'ai trouvé le problème. Mon symbole décimal dans les paramètres régionaux était également une virgule (européenne). Ainsi, même lorsque mon séparateur de liste était une virgule, le fichier CSV était enregistré avec des points-virgules. Maintenant, j'ai changé mon symbole décimal en un point et maintenant le fichier CSV est créé correctement avec des virgules comme séparateurs. Je l'ai testé deux fois et je sais maintenant qu'il doit y avoir une exception: si le symbole décimal est une virgule, le séparateur de liste sera un point-virgule et même s'il est défini autrement.
Vous devez ajuster le séparateur de liste dans les paramètres de langue et de région avant pour enregistrer le fichier -
Aller à Données - Obtenir des données externes - À partir du texte
sélectionner le fichier
Sélectionnez délimité , appuyez sur suivant
et sélectionnez le délimiteur virgule
Cliquez sur Terminer
Ou bien, tirez-le et utilisez ensuite du texte pour les colonnes voir ici
Voici une très belle macro qui fonctionne assez bien:
Sub saveCSV()
File = Application.GetSaveAsFilename(InitialFileName:="file.csv", FileFilter:="CSV (*.csv), *.csv")
ActiveWorkbook.SaveAs Filename:=File, FileFormat:=xlCSV, CreateBackup:=False, local:=False
End Sub