7 min de lecture
Ouvrir et modifier un fichier XML dans Excel (sans coder)
Par Quentin Delepierre, consultant Salesforce Commerce Cloud
Excel sait « ouvrir » un XML, mais le résultat est souvent illisible ou casse la structure du fichier. Voici une méthode fiable pour éditer n'importe quel XML dans un tableur et le récupérer intact.
Pourquoi l'ouverture native d'Excel pose problème
Quand vous ouvrez un XML directement dans Excel, il essaie d'en deviner la structure et propose souvent un mapping de schéma incompréhensible. Pour les XML un peu complexes (éléments imbriqués, attributs, répétitions), le rendu est inutilisable et, surtout, vous ne pourrez pas régénérer le fichier d'origine.
Le vrai besoin n'est pas seulement d'ouvrir le XML : c'est de le modifier ET de le reconstruire avec sa structure d'origine pour pouvoir le réutiliser.
La méthode fiable
- Déposez votre fichier XML sur ExcelifyXML : un aperçu gratuit montre la balise de ligne détectée et les premières lignes. Pas la bonne ligne ? Choisissez-en une autre, toujours sans crédit.
- Confirmez (1 crédit) et récupérez un CSV propre, où la hiérarchie du XML est aplatie en colonnes lisibles.
- Ouvrez-le dans Excel, Numbers ou Google Sheets et modifiez ce que vous voulez.
- Déposez le CSV modifié avec son skeleton.json sur la page Reconstruction : l'algorithme rétablit la structure, les attributs et l'ordre exacts.
Comment le XML devient des colonnes
La balise qui se répète (ici <produit>) devient une ligne par occurrence. Tout ce qu'elle contient devient une colonne, selon quelques règles simples :
- Un élément simple garde son nom : nom.
- Un attribut commence par @ : @id pour l'attribut de la ligne, prix.@devise pour l'attribut d'un élément.
- Un élément répété est numéroté : couleur[0], couleur[1].
- Un élément répété par langue prend la langue entre crochets : description[fr], description[en].
- Le texte propre d'une ligne qui a aussi des attributs va dans la colonne #text.
<catalogue>
<produit id="P001">
<nom>Veste légère</nom>
<prix devise="EUR">89.00</prix>
<couleur>bleu</couleur>
<couleur>noir</couleur>
<description xml:lang="fr">Veste coupe-vent</description>
<description xml:lang="en">Windproof jacket</description>
</produit>
…
</catalogue>@id ; nom ; prix.@devise ; prix ; couleur[0] ; couleur[1] ; description[fr] ; description[en]
P001 ; Veste légère ; EUR ; 89.00 ; bleu ; noir ; Veste coupe-vent ; Windproof jacket
P002 ; Pull col rond ; EUR ; 59.00 ; gris ; vert ; Pull en laine ; Wool sweaterCe que vous pouvez faire dans le tableur
- Modifier n'importe quelle valeur, trier, filtrer, utiliser des formules (collez ensuite le résultat en valeurs).
- Ajouter une ligne : elle devient un nouvel élément. Supprimer une ligne : l'élément disparaît du XML.
- Ajouter une colonne : elle devient une nouvelle balise dans chaque ligne qui a une valeur. Une cellule vide n'écrit rien.
- Ne renommez pas les en-têtes : le nom de chaque colonne dit où remettre la valeur dans le XML. Dans le fichier, les en-têtes qui commencent par @ sont précédés d'une apostrophe, une protection contre les formules : laissez-la, elle est retirée à la reconstruction.
Les erreurs fréquentes
- Le CSV s'ouvre en une seule colonne : votre Excel attend un autre séparateur. Ouvrez-le par Données › À partir d'un fichier texte/CSV, ou voir le guide dédié.
- Des codes deviennent 3,61235E+12 ou perdent leurs zéros : importez ces colonnes en Texte.
- Des « ? » remplacent certains caractères : enregistrez au format « CSV UTF-8 ».
- Le XML reconstruit n'a pas vos modifications : vous avez redéposé le .excelify.zip tel que téléchargé. Le tableur enregistre le CSV à côté de l'archive, pas dedans : déposez le data.csv modifié avec son skeleton.json (« Fichiers séparés »).
Quels XML sont pris en charge ?
- Flux e-commerce (Google Shopping, PrestaShop, WooCommerce, Magento)
- Exports PIM (Akeneo, Salesforce Commerce Cloud)
- Fichiers RSS, sitemaps, exports métiers divers
- Encodages UTF-8, UTF-16, ISO-8859-1, Windows-1252, et les encodages déclarés d'Europe centrale, grecs, turcs, cyrilliques, japonais, chinois ou coréens (détection automatique)
- Au retour, le CSV enregistré par Excel, Numbers, Google Sheets ou LibreOffice : séparateur et encodage reconnus automatiquement (CSV UTF-8, « CSV » de Windows ou de Mac, MS-DOS…)
Variante : régénérer le XML depuis Excel
Vous préférez ne pas repasser par le site après vos modifications ? Le classeur Excel autonome (2 crédits) contient vos données et un bouton « Générer le XML » : vos modifications et la génération du XML se font dans Excel, sur votre poste, hors ligne, autant de fois que nécessaire. Il faut Excel de bureau, sur Windows ou sur Mac.
Sécurité et confidentialité
Aucun fichier n'est conservé : traitement en mémoire sur serveurs européens puis suppression immédiate. Les déclarations d'entités (ENTITY, seules ou dans un DOCTYPE) sont bloquées (prévention des attaques XXE), la DTD externe qu'un DOCTYPE désigne n'est jamais téléchargée, et l'injection de formules dans le CSV est neutralisée.
Ouvrez votre fichier XML dans Excel maintenant :
Transformer un fichier