araç köşesi

CSV en XLSX

Transformer un fichier CSV en classeur XLSX qu'Excel ouvre sans rien deviner

Choisissez vos fichiers CSVTouchez ou cliquez sur la zone — une fenêtre de sélection de fichier s'ouvre. Vous pouvez aussi y faire glisser un fichier.Fichiers texte en .csv ou .txt — chacun ressort en .xlsx séparé

Vos fichiers restent chez vous. La conversion se fait dans le navigateur ; aucun fichier n'est envoyé sur un serveur.

Comment ça marche

Choisissez un ou plusieurs fichiers CSV, vérifiez les deux réglages, puis appuyez sur Convertir : chaque fichier revient en .xlsx séparé, à télécharger depuis la liste. Le séparateur est déduit du fichier lui-même — point-virgule, virgule et tabulation sont comptés hors guillemets, et le candidat qui revient le même nombre de fois à chaque ligne l'emporte ; une virgule à l'intérieur d'une adresse n'est donc pas prise pour un séparateur de colonnes. Les guillemets sont lus selon la RFC 4180 : un séparateur ou un retour à la ligne placé entre guillemets reste dans la valeur. Le gain réel de la conversion tient en une phrase : dans un XLSX, le type de chaque cellule est écrit dans le fichier, Excel n'a plus rien à deviner à l'ouverture. Les valeurs qui commencent par un zéro et les suites de plus de 15 chiffres sont volontairement écrites en cellule texte — un numéro de mobile en 06, un code postal, un numéro d'adhérent ou un IBAN traverse la conversion sans être réécrit. La virgule est traitée comme séparateur décimal, 12,5 devient donc un nombre avec lequel Excel calcule. Les cellules vides gardent leur place et les colonnes ne se décalent pas. Votre fichier n'est envoyé nulle part : le classeur est fabriqué sur votre propre appareil.

Cet outil est aussi connu sous le nom de convertir csv en excel, csv en xlsx, convertir un fichier csv en excel, difference entre csv et xlsx, ouvrir un csv dans excel, csv vers xlsx en ligne.

Qu'est-ce que CSV ?

Un CSV est un tableau écrit en texte pur : une ligne par enregistrement, un signe séparateur entre les cellules, et rien d'autre. Ce qui le rend inconfortable, c'est tout ce qui n'y figure pas — le fichier ne déclare ni son encodage, ni son séparateur, ni le type d'une cellule. Chaque logiciel qui l'ouvre doit deviner les trois. C'est pourquoi le même fichier peut s'afficher proprement ici et avec des accents hachés là, sans que le fichier ait changé d'un octet.

Qu'est-ce que XLSX ?

XLSX est le format de classeur d'Excel depuis 2007. Il ressemble à un document unique mais c'est une archive ZIP : renommez-le en .zip et vous y trouverez des morceaux XML décrivant la feuille, les valeurs des cellules et les formats de nombre, chacun déclaré explicitement. Comme le type de chaque cellule est écrit dans le fichier, il ne reste rien à deviner à l'ouverture, et le texte est toujours en Unicode : les accents s'affichent pareil sur toutes les machines. C'est aussi pour cela qu'un classeur peut être fabriqué sans Excel installé, comme sur cette page.

Quelle est la différence entre CSV et XLSX ?

Un CSV porte des valeurs ; un XLSX porte les valeurs et la manière de les lire. Dans un CSV, ni l'encodage, ni le séparateur, ni le type d'une cellule ne sont notés : c'est le logiciel qui ouvre qui tranche, et une décision fausse réécrit vos données en silence. Un XLSX fixe tout cela dans l'archive et transporte en plus ce qu'un fichier texte ne peut pas porter du tout : plusieurs feuilles, des formules, des formats de nombre, des largeurs de colonne. Exportez en CSV quand un autre système va lire les données ; convertissez en XLSX quand une personne va ouvrir le fichier dans Excel et qu'il doit s'afficher pareil chez tout le monde. La différence se voit jusque dans la structure : un CSV est un fichier texte que vous pouvez lire dans un éditeur, un XLSX une archive compressée faite de morceaux XML.

Pourquoi Excel abîme un CSV ouvert d'un double-clic

Un double-clic sur un .csv donne à Excel un fichier qui ne dit rien de lui-même. Excel devine l'encodage et le séparateur ; si l'une des deux suppositions tombe à côté, les accents deviennent é et ç, ou la ligne entière atterrit dans une seule cellule. Ces dégâts-là ont au moins le mérite de se voir.

Le dégât qu'on ne voit pas est numérique. Excel ne conserve que 15 chiffres significatifs : un numéro de carte à 16 chiffres revient avec un zéro à la fin, les valeurs longues s'affichent en 1,23E+15, et un mobile écrit 0612345678 perd son zéro pour devenir 612345678. Si le fichier est enregistré dans cet état, la perte est définitive, car les chiffres d'origine ne sont plus nulle part dans le classeur.

Cet outil fixe le type de chaque cellule avant qu'Excel n'ait son mot à dire, et écrit ces valeurs-là en texte. Ce que vous avez exporté est ce que vous rouvrez.

Nombre ou texte : quel réglage pour votre fichier ?

Restez sur « Convertir en nombres » quand les colonnes portent des montants, des quantités ou des mesures sur lesquels vous comptez calculer. Ces cellules deviennent de vrais nombres, qu'Excel additionne, moyenne et met en graphique sans étape intermédiaire. La ligne de résultat indique combien de cellules ont été converties ; si le compte est nettement inférieur à ce que vous attendiez, vérifiez d'abord le séparateur.

Choisissez « Garder en texte » quand les chiffres sont des identifiants et non des quantités : références produit, numéros de commande, codes-barres, numéros de téléphone. Rien n'est alors converti et chaque caractère reste écrit tel qu'il est arrivé.

Une limite à connaître avant de lancer la conversion. Un seul séparateur entre des chiffres est toujours lu comme une virgule décimale, quel que soit le signe : 12,5 devient bien douze et demi, mais 12.500 exporté par un logiciel qui sépare les milliers par un point devient 12,5 — mille fois moins. En revanche, une valeur qui porte les deux signes, comme 1.234,56, reste en texte, parce que le fichier ne dit pas lequel des deux est le décimal ; l'espace des milliers à la française, comme dans 1 234,56, laisse elle aussi la cellule en texte. Pour une colonne dont les milliers sont marqués, « Garder en texte » est l'assurance.

  • Montants, quantités, mesures → Convertir en nombres
  • Références, numéros de client, numéros de téléphone → Garder en texte
  • Milliers séparés par un point (12.500) → Garder en texte, sinon la valeur devient 12,5
  • Milliers séparés par une espace (1 234,56) → la cellule reste en texte de toute façon

Le détail : format, contenu, taille

Les deux formats portent le même tableau mais ne rangent pas les mêmes choses. Un CSV est du texte pur : ouvrez-le dans un éditeur et vous lisez chaque valeur de vos propres yeux, puisqu'il ne contient que les valeurs et le signe qui les sépare. Un XLSX est une archive ZIP, et à l'intérieur se trouvent des morceaux XML qui décrivent séparément la feuille, les valeurs et le type de chaque cellule. Ouvert dans un éditeur, ce même fichier donne une bouillie de signes — non parce qu'il est abîmé, mais parce qu'il n'a jamais été du texte.

La taille découle de cette structure. Un tableau d'exemple de 200 lignes et 5 colonnes pèse environ 8 Ko en CSV ; le XLSX que cette page en écrit tourne autour de 7 Ko. Chaque cellule étant enveloppée de balises XML, l'archive brute approcherait 70 Ko — mais les fichiers qu'elle contient sont écrits avec la compression propre au format ZIP, et ces balises toujours identiques fondent. Plus le tableau grandit, plus le gain compte : un CSV de 50 000 lignes donnerait 18 Mo sans compression, contre 1,3 Mo ici.

Autrement dit : un CSV transporte les données, un XLSX transporte les données et le mode d'emploi pour les lire. Le premier est fait pour être transmis à une machine, le second pour être travaillé par une personne.

  • Format → le CSV est du texte pur ; le XLSX est une archive ZIP faite de morceaux XML
  • Type de cellule → absent du CSV, deviné par le logiciel qui ouvre ; déclaré cellule par cellule dans le XLSX
  • Formules → le CSV ne garde que le dernier résultat ; le XLSX garde la formule et Excel la recalcule
  • Feuilles → un CSV porte un seul tableau ; un XLSX peut en porter plusieurs
  • Mise en forme → police, couleur, largeur de colonne et cellules fusionnées n'existent que dans le XLSX
  • Accents → le CSV ne déclare pas son encodage et peut se casser ; le texte d'un XLSX est toujours en Unicode
  • Taille → le même tableau de 200 lignes : environ 8 Ko en CSV, environ 7 Ko pour le XLSX de cette page
  • Usage → CSV pour un import, une compta ou une base de données ; XLSX pour calculer et transmettre

Questions fréquentes

Les zéros en début de valeur sont-ils conservés ?

Oui. Une valeur qui commence par un zéro est écrite volontairement en cellule texte : 007 reste 007 et un numéro de mobile en 06 garde ses dix chiffres. La même protection s'applique à toute suite de plus de 15 chiffres, qu'Excel arrondirait sinon.

Pourquoi Excel affiche-t-il un long numéro en 1,23E+15 ?

Parce qu'il le traite comme une quantité, n'en garde que 15 chiffres significatifs et affiche le reste en notation scientifique. Un numéro de carte, un IBAN ou un numéro d'adhérent est un identifiant et non une quantité : cet outil les écrit donc en texte et chaque chiffre reste lisible.

Est-ce que j'obtiens un classeur à plusieurs feuilles ?

Non. Chaque CSV devient un classeur d'une seule feuille, car le format CSV ne connaît pas la notion de feuille. Si vous choisissez plusieurs fichiers, vous récupérez plusieurs .xlsx, un par fichier d'entrée ; rien n'est fusionné.

1 234,56 ou 1.234,56 deviennent-ils des nombres ?

Non, ces deux écritures restent en texte, parce que le fichier ne dit pas lequel des deux signes marque les décimales et qu'une erreur de lecture décalerait la valeur d'un facteur mille. En revanche, un nombre qui ne porte qu'un seul séparateur est toujours lu comme un décimal : 12.500 devient 12,5. Retirez le marqueur de milliers, ou choisissez « Garder en texte » pour ces colonnes.

Mes accents survivent-ils à la conversion ?

Oui, dans les deux cas de figure. Un fichier en UTF-8, avec ou sans marque d'ordre d'octets, est lu directement. Un fichier qui n'est pas de l'UTF-8 valide est relu avec un codage historique sur un octet, dans lequel é, è, à, ç et ù occupent les mêmes positions que dans le jeu occidental habituel : les lettres accentuées reviennent entières. Le texte d'un XLSX étant toujours en Unicode, la question ne se repose plus ensuite.

Mon fichier part-il quelque part ?

Non. La lecture du texte, le découpage des lignes et l'assemblage de l'archive XLSX ont lieu dans votre navigateur. Le fichier ne quitte pas votre appareil et l'outil continue de fonctionner sans connexion à Internet.