Ce qui se passe est le suivant.
- Excel regarde les paramètres régionaux de votre système pour trouver quel séparateur de liste est configuré, dans votre cas, une virgule. Il est important de souligner que le CSV n'est pas un format unique et bien défini. N'importe quel séparateur pourrait être utilisé... (Édition : Eh bien, il y a en fait une ligne directrice qui fixe le séparateur comme étant une virgule, mais ce n'est pas une norme contraignante, et la ligne directrice n'est pas strictement suivie en pratique.)
- Ensuite, Excel transforme les données, en mémoire, en un fichier XLSX. Vous effectuez vos actions spécifiques à Excel. Gardez à l'esprit qu'il s'agit effectivement d'une conversion de type de fichier, et qu'Excel ne se souvient pas de l'encodage de votre fichier source, ni du séparateur utilisé.
- Vous apportez des modifications, puis cliquez sur Enregistrer. À ce moment-là, Excel n'a plus de fichier CSV, mais un fichier XLSX, et doit le convertir en quelque chose de "CSV-like". Parce qu'il sait que l'encodage doit être UTF-8 avec BOM, il décide d'Enregistrer sous "Texte Unicode" (il le fait sans explicitement le mentionner). Dans ce format, ils utilisent UCS-2 LE avec BOM comme encodage, et la tabulation comme séparateur. Ce n'est pas la norme CSV à laquelle vous pensiez, ni la norme selon laquelle votre fichier d'origine était formaté. C'est étrange et contre-intuitif, mais strictement parlant, ce n'est pas incorrect.
Alors, que pouvez-vous faire ?
En théorie, vous devriez pouvoir utiliser l'option Enregistrer sous CSV, et grâce au menu Outils->"Options Web" (dans la boîte de dialogue Enregistrer sous) définir l'encodage sur UTF-8. Le seul problème ici est que cela ne semble pas fonctionner correctement. Je suppose que c'est une fonctionnalité brisée. Plus d'informations sur Stack Overflow : Excel to CSV with UTF-8 encoding
Alors, que pouvez-vous vraiment faire ?
Utilisez simplement le BOM UTF-8, enregistrez, et ouvrez le fichier CSV résultant pour remplacer toutes les tabulations par des virgules.
Et que devriez-vous vraiment faire ?
N'utilisez pas Excel pour charger et modifier des fichiers CSV. Ou du moins, soyez beaucoup plus prudent à ce sujet...
Pourquoi pas ?
J'ai écrit un (trop long) article à ce sujet ici.