Convertir un CSV en Excel
Un vrai .xlsx, sans que rien n’ait changé en route.
- Les zéros en tête sont conservés
- Les longs identifiants ne sont pas arrondis
- Les nombres restent additionnables
- Rien n’est envoyé
1.Ouvrez le fichier
CSV ou TSV. Glissez-le ici, ou choisissez un fichier.
Pourquoi ça existe
Ouvrir un CSV dans Excel n’est pas un geste neutre. Excel devine ce que chaque cellule signifie, et ses suppositions sont destructrices : les codes postaux perdent leur zéro en tête, les numéros de commande à 16 chiffres sont arrondis à 15, et tout ce qui ressemble à une date en devient une. Ici, le .xlsx est écrit directement, chaque colonne étant décidée d’après toutes ses valeurs : les nombres arrivent comme des nombres que vous pouvez additionner, et tout ce qui ressemble seulement à un nombre arrive comme le texte qu’il était.
Ce que ça fait
- Lit toutes les valeurs de chaque colonne, pas un échantillon, avant de décider si la colonne est numérique.
- Écrit les nombres comme de vrais nombres et vrai/faux comme des booléens Excel.
- Garde en texte toute colonne avec des zéros en tête ou de plus de 15 chiffres, et vous montre lesquelles avant le téléchargement.
- Fige et met en gras la ligne d’en-tête, ajoute un filtre et ajuste la largeur des colonnes.
- Répartit un fichier de plus de 1 048 576 lignes sur plusieurs feuilles d’un même classeur, car c’est la limite d’Excel par feuille.
Pourquoi ne pas simplement ouvrir le CSV dans Excel
Parce qu’Excel convertit à l’ouverture, et c’est cette conversion qui fait les dégâts. Une cellule qui valait `00742` est stockée comme 742, et enregistrer le fichier écrit 742. Écrire directement le classeur, c’est décider une seule fois du type de chaque cellule, selon une règle visible, plutôt que d’après la supposition d’Excel au moment du double-clic.
Questions
- Mes zéros en tête seront-ils conservés ?
- Oui. Toute colonne dont une valeur commence par un zéro suivi d’autres chiffres est écrite en texte : 00742 reste donc 00742 dans le classeur et dans toutes ses copies.
- Pourquoi certains de mes nombres sont-ils stockés en texte ?
- Parce que ce sont des identifiants et non des quantités : codes postaux, numéros de téléphone, de compte ou de commande. Excel ne retient que 15 chiffres significatifs, donc un nombre à 16 chiffres serait arrondi, et un identifiant dont le dernier chiffre change n’est plus le même identifiant. Si vous préférez tout en texte, cochez la case et rien n’est converti.
- Est-ce que ça marche avec de très gros fichiers ?
- Oui, dans la limite de la mémoire de l’onglet du navigateur. Au-delà de 1 048 576 lignes, le classeur reçoit une deuxième feuille, puis une troisième, car une feuille Excel ne peut pas en contenir davantage.
Les autres outils
- Ouvrir un fichier CSV en ligneDéposez un fichier. Il s’ouvre ici, et il reste ici.Ouvrez-le
- Exécuter du SQL sur un fichier CSVDu vrai SQL sur votre fichier, sans installer de base de données.Ouvrez-le
- Fusionner des fichiers CSV en un seulPlusieurs fichiers en entrée, un seul en sortie, colonnes rapprochées par nom.Ouvrez-le
- Supprimer les doublons d’un CSVDes doublons sur les colonnes que vous dites identifier une ligne.Ouvrez-le
- Comparer deux fichiers CSVAjouts, suppressions, modifications, rapprochés sur une clé et non ligne à ligne.Ouvrez-le
- Convertir un CSV en PDFUn CSV mis en page comme un tableau lisible, enregistré en PDF.Ouvrez-le
- Convertir un CSV en JSONChaque ligne un objet, chaque en-tête une clé.Ouvrez-le
- Convertir du JSON en CSVUn arbre aplati en tableau que l’on peut ouvrir partout.Ouvrez-le
- Convertir Excel en CSVToutes les feuilles d’un classeur, en CSV UTF-8 propre.Ouvrez-le
- Découper un fichier CSVUn fichier trop gros pour servir, en plusieurs qui le sont moins.Ouvrez-le
- Nettoyer un CSV en désordreAllemagne, allemagne et « Allemagne » redeviennent une seule valeur.Ouvrez-le
- Convertir un CSV en instructions SQL INSERTUn CSV en entrée, un script .sql que n’importe quelle base exécute.Ouvrez-le