araç köşesi

Convertir un fichier Excel (XLSX) en XML

Chaque ligne du tableau devient un enregistrement XML balisé

Choisissez vos fichiers ExcelTouchez ou cliquez sur la zone — une fenêtre de sélection de fichier s'ouvre. Vous pouvez aussi y faire glisser un fichier..xlsx, .xlsm, .xls et .ods ; un fichier XML est téléchargé par classeur

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

Comment ça marche

Touchez ou cliquez le cadre et choisissez votre fichier Excel. Si la première ligne contient des en-têtes (Nom, Montant, Date…), laissez le réglage par défaut : chaque en-tête devient un nom d'élément XML et chaque ligne du tableau devient un élément <enregistrement>, le tout enveloppé dans une racine <donnees>. Une liste de clients de 200 lignes et trois colonnes donne ainsi un seul fichier XML contenant 200 <enregistrement>, chacun portant <Nom>, <Telephone> et <Ville>. Un en-tête avec des espaces ou de la ponctuation est adapté avec des tirets bas (« Date de naissance » → Date_de_naissance) et un en-tête qui commence par un chiffre reçoit un tiret bas devant ; la ligne de résultat indique combien d'en-têtes ont changé. Les cellules de date sont écrites année-mois-jour (2023-03-15), les nombres gardent un point décimal (1250.5, et non 1250,5 comme l'afficherait un Excel en français), les cellules VRAI/FAUX deviennent true/false : le programme qui lira le XML les comprend sans réglage. Si le classeur a plusieurs feuilles, l'option « Toutes les feuilles » les met dans le même fichier, chacune sous son élément <feuille nom="…">.

Cet outil est aussi connu sous le nom de excel en xml, convertir excel en xml, xlsx en xml, convertir un fichier excel en xml, excel vers xml gratuit, exporter excel en xml.

Qu'est-ce que XML ?

Le XML est un format texte qui place chaque valeur entre une balise ouvrante et une balise fermante : <Nom>Amina</Nom>. Il a été conçu pour faire circuler des données entre programmes ; la facturation électronique, les échanges bancaires, les logiciels de comptabilité et bien des systèmes d'entreprise réclament ce format. Un fichier XML se lit dans le Bloc-notes, mais sa force est la rigueur de sa structure : chaque valeur annonce par sa balise à quel champ elle appartient, et l'ordre des colonnes ou le choix du séparateur ne posent plus question. Cet outil transforme chaque ligne d'Excel en un enregistrement balisé de ce type.

Qu'est-ce que Nom d'élément ?

Le nom d'élément est le nom de la balise qui enveloppe une valeur ; dans <Montant>1250.5</Montant>, c'est Montant. En XML, ce nom ne peut contenir ni espace, ni guillemet, ni la plupart des signes de ponctuation, et il ne peut commencer ni par un chiffre ni par les lettres « xml ». Cet outil adapte de lui-même vos en-têtes Excel à cette règle : espaces et signes deviennent des tirets bas, un nom commençant par un chiffre reçoit un tiret bas devant, et si le même en-tête apparaît dans deux colonnes, le second reçoit le suffixe _2. Le fichier obtenu s'ouvre ainsi sans erreur dans tout lecteur XML ; la ligne de résultat vous dit quels en-têtes ont été modifiés.

Quelle est la différence entre XML et CSV ?

Le CSV est une suite de lignes plates où les cellules sont séparées par une virgule ou un point-virgule ; il est léger et s'ouvre directement dans Excel, mais on ne sait à quelle colonne appartient une valeur que par sa position, et le séparateur, les guillemets et la marque décimale changent d'un pays à l'autre au point d'abîmer le fichier. En XML, chaque valeur est enfermée dans sa propre balise, l'ordre des colonnes n'a pas d'importance, des structures imbriquées (plusieurs feuilles sous un même enregistrement, par exemple) sont possibles et le fichier se décrit lui-même. Le prix à payer est la taille : le même tableau est plusieurs fois plus long en XML. Destiné à une personne ou à Excel, prenez le CSV ; destiné à un programme ou à un organisme, prenez le XML.

Pourquoi les dates et les nombres ne ressemblent-ils pas à ceux d'Excel ?

Le fichier XML sera lu par un programme, pas par une personne ; l'outil fixe donc l'écriture une fois pour toutes. Une cellule de date affichée 15/03/2023 dans Excel est écrite 2023-03-15 (ISO 8601), et 2023-03-15T14:30:00 si elle porte une heure. Une cellule affichée 1 250,50 € dans Excel sort en 1250.5 : point décimal, pas de séparateur de milliers, pas de symbole monétaire — le point est voulu, même si un lecteur francophone attend une virgule, car c'est la seule écriture qu'un programme lit sans ambiguïté. Une cellule en pourcentage donne 0.15 et non 15 %, puisque c'est la valeur stockée. Les cellules VRAI/FAUX deviennent true/false ; les cellules en erreur (#N/A, par exemple) sont écrites avec le texte qu'Excel affiche.

C'est un choix assumé : les programmes et les bases de données comprennent cette écriture sans réglage, tandis que l'écriture locale (virgule décimale, jour/mois/année) varie d'un pays à l'autre et se lit de travers en face. Si vous voulez exporter le tableau avec l'écriture affichée dans Excel, c'est le rôle de l'outil XLSX en CSV de ce site, où l'écriture des dates et des nombres se choisit.

Cellules vides, lignes vides et classeurs à plusieurs feuilles

Une cellule vide n'est pas sautée : elle donne un élément vide (<Telephone></Telephone>), si bien que chaque enregistrement garde le même nombre de champs et que le programme lecteur retrouve partout la même structure. Les lignes entièrement vides en fin de tableau (des lignes mises en forme mais sans contenu peuvent subsister dans le fichier) sont retirées ; une ligne vide au milieu reste en revanche un enregistrement vide — le plus propre est de la supprimer dans Excel avant de reconvertir. Largeurs de colonnes, couleurs et formules n'entrent pas dans le XML ; pour une cellule de formule, c'est la dernière valeur calculée qui est écrite.

Avec « Toutes les feuilles », chaque feuille reçoit sous la racine son propre élément <feuille nom="Janvier"> qui contient ses enregistrements ; la ligne d'en-tête de chaque feuille est lue séparément, les feuilles peuvent donc avoir des colonnes différentes. Une feuille vide ne produit rien. Les noms de racine et de ligne se modifient librement : si le système en face attend <clients> contenant des <client>, écrivez ces deux mots dans les champs — ils passent par la même règle de nommage XML. Sans en-tête, les colonnes s'appellent colonne1, colonne2, et ainsi de suite.

Questions fréquentes

L'outil produit-il le schéma XML imposé par un organisme (facture électronique, SEPA, UBL) ?

Non. Cet outil transforme votre tableau en une structure plate et régulière : un élément racine, un élément d'enregistrement par ligne, un élément de champ par colonne. Une facture électronique au format UBL ou un fichier de virements SEPA exigent des noms d'éléments précis, des niveaux imbriqués et des espaces de noms que seul un programme écrit pour ce schéma peut produire. Pour un schéma simple, en liste plate, vous pouvez toutefois remplacer les noms de racine et de ligne par ceux attendus et nommer vos colonnes d'après les champs du schéma : la sortie devient alors utilisable telle quelle.

Pourquoi mes en-têtes ont-ils été modifiés ?

Un nom d'élément XML ne peut contenir ni espace, ni guillemet, ni parenthèse, et ne peut commencer par un chiffre. Plutôt que d'écarter l'en-tête, l'outil l'adapte : « Prix unitaire (HT) » devient Prix_unitaire__HT_, « 2024 » devient _2024. Les lettres accentuées sont conservées, car é, è ou ç sont valides dans un nom XML. Le nombre d'en-têtes modifiés et les trois premiers changements (ancien → nouveau) figurent dans la ligne de résultat ; des en-têtes simples dès le départ dans Excel ne changent pas du tout.

Un ancien fichier .xls ou un .ods de LibreOffice est-il accepté ?

Oui. Outre .xlsx et .xlsm, le format .xls d'Excel 97-2003 et le .ods de LibreOffice ou OpenOffice sont lus. Un fichier protégé par mot de passe ne peut pas l'être : retirez le mot de passe dans Excel et enregistrez à nouveau. Pour convertir un CSV en XML, ouvrez-le d'abord dans Excel et enregistrez-le en .xlsx, ou enchaînez les outils CSV en JSON puis JSON en XML de ce site.

Le classeur est-il transmis à un serveur ?

Non. L'ouverture du fichier, la lecture des cellules et l'écriture du XML se déroulent dans votre navigateur ; le classeur ne quitte pas votre appareil. C'est ce qui compte pour un fichier de clients, un tableau de salaires ou des lignes de facture. Une fois la page affichée, la conversion fonctionne même sans connexion.