Académique Documents
Professionnel Documents
Culture Documents
Exporter des données au format CSV n'est pas si trivial qu'il n'y paraît.
Dès que vos données contiennent des virgules ou des guillemets, tout semble partir en vrille.
Il y a une astuce.
Voici comment procéder pour exporter à coup sûr vos données en CSV:
Doubler tout séparateur de chaîne trouvé dans la cellule ( ga"bu"zo ---> ga""bu""zo )
Quoter systématiquement le contenu de chaque cellule ( toto ----> "toto" )
Puis ajouter les cellules entre elles en séparant par une virgule. ( "toto","titi","tata" )
Puis ajouter les lignes entre elles en séparant par \r\n
Et voilà !
Tout sera exporté correctement, même si vos cellules contiennent des virgules, des espaces,
des guillemets ou même des retours à la ligne.
Exemple
Voici un fichier CSV complexe:
"colonne A","colonne B","colonne C"
"Il a dit ""coucou !"" hier.","Hé, Je contiens une virgule !","125"
"Attention:","Je contient
un retour à la ligne.","777"
Exemple:
"","12"
"","34"
"Total:","=B1+B2"
Comme vous pouvez le voir, le format CSV pose divers problèmes (aucun contrôle sur la
manière dont le contenu des cellules est interprété, aucun formattage (couleurs, format de
nombre, etc..))
On peut palier à ces problèmes avec une autre astuce: Exportez des fichiers html (contenant
des styles CSS spéciaux) et renommez ces fichiers html en .xls:
Excel saura l'ouvrir sans problème, et prendra en compte le format des cellules (type, couleur,
etc.)
Voir (en anglais)