Lorsque je double-clique sur un fichier .csv, celui-ci s’ouvre dans Excel. Les fichiers csv ont des colonnes délimitées par des points-virgules (pas de virgules, mais aussi un format valide).
En utilisant une configuration allemande Windows / Excel, le fichier ouvert est affiché correctement, les colonnes sont séparées où les points-virgules existaient dans le fichier csv.
Mais lorsque je fais la même chose sur une configuration Windows / Excel (US-) anglaise, une seule colonne est importée et affiche l'ensemble des données, y compris les points-virgules de la première colonne.
(Je n'ai pas de configuration anglaise disponible pour les tests, les utilisateurs ont signalé le comportement)
J'ai essayé de changer la valeur du séparateur de liste dans les paramètres régionaux de Windows, mais cela n'a rien changé.
Que puis-je faire pour pouvoir double-cliquer et ouvrir ces fichiers CSV sur une configuration anglaise?
EDIT:
Cela semble être la meilleure solution pour ne pas compter sur les fichiers CSV dans ce cas. J'espérais qu'il existe un formatage pour les fichiers CSV qui permette de les utiliser à l'échelle internationale.
La meilleure solution semble que je passe à la création de fichiers XLS.
la source
Réponses:
Ces fichiers sont distribués? téléchargé? Généré localement?
Je pense que la façon unique de résoudre votre problème sans accès au PC de l'utilisateur et sans qu'il ait à faire quelque chose de différent du "double-clic" sur le fichier est de convertir les fichiers en .xls avant de les distribuer ou de les placer pour les télécharger ou les générer. un fichier .xls (ou un autre format qui fonctionne) au lieu d’un fichier .csv. Vous pouvez le faire avec un script ou manuellement avec un Excel fonctionnel, en fonction du nombre de fichiers et de la manière dont ils sont générés.
la source
Ajoutez ceci sur la première ligne du fichier CSV:
ou
Cela remplacera le paramètre système ("caractère séparateur de liste") et Excel ouvrira le fichier correctement.
la source
sep=
ousep=;
dans celle-ci, mais certains programmes ou scripts automatisés peuvent ne pas attendre la première ligne supplémentaire, ce qui entraîne l'sep=;
interprétation des en- têtes de colonnes ou de la ligne elle-même.fwrite($fileHandle, 'sep=,' . "\r\n");
complètement résolu le problème avecfputcsv
PHP.Vous pouvez utiliser l'assistant d'importation de texte. Cela ne fonctionne pas avec un double-clic-ouvert, mais c’est le meilleur choix que je puisse faire, qui ne consiste pas à jouer avec les paramètres de lanugage.
Dans Excel 2003, allez sur
Data
->Import External Data
->Import Data
dans la barre de menus (vous ne pouvez pas savoir où il se trouve en 2007, je n'ai pas cela sous la main pour le moment). Recherchez et sélectionnez votre fichier CSV.Quand il s'ouvre, vous obtenez le
Text Import Wizard
, qui vous permet de spécifier le ou les délimiteurs à utiliser.la source
Voir cet article:
Problème lors de l'ouverture de fichiers CSV avec Excel? Le problème des virgules et des points-virgules dans Excel en raison de paramètres régionaux pour l'Europe
Ce qui offre 3 solutions:
Comme vous n’avez modifié que la valeur du séparateur de liste dans les paramètres régionaux de Windows, je remarque que l’article dit de saisir “.” Pour
Decimal Symbol
et “,” pourList Separator
.Si vous vous sentez à l'aise avec VBA, consultez:
Ouverture d'un fichier CSV délimité par des points-virgules avec VBA dans Excel 2000
Exportation et importation de texte avec Excel
la source
Le meilleur moyen que j'ai essayé est de définir les paramètres régionaux de votre ordinateur comme suit:
Cela fonctionne pour moi, essayez-le.
la source
S'il n'y a pas d'autres virgules dans le fichier, vous pouvez simplement rechercher / remplacer dans un éditeur de texte au point-virgule pour les transformer en virgules. Traiter comme un fichier csv normal après cela.
la source