Convertir un fichier XML en Excel (import manuel ou VBA)
Excel permet d’importer des données XML de deux façons : manuelle (ponctuelle) ou programmatique (VBA, pour automatiser).
Import manuel (recommandé pour 1 fichier)
- Excel ▸ Fichier ▸ Ouvrir ▸ type Fichiers XML (*.xml).
- Sélectionnez le fichier ▸ Ouvrir.
- Si proposé, choisissez une feuille de style XSLT (ou « Annuler » pour tableau brut).
- Données structurées apparaissent dans la feuille. Fichier ▸ Enregistrer sous ▸ Classeur Excel (*.xlsx) pour convertir définitivement.
Import programmatique (VBA) – pour plusieurs fichiers
- Notez le chemin complet du fichier XML (local :
C:\Dossier\fichier.xml; ou HTTP :https://serveur/dossier/fichier.xml) et éventuellement la feuille XSLT. - Alt+F11 (Éditeur VBA) ▸ Insertion ▸ Module.
- Collez ce code (adaptez chemin et feuille) :
Sub ImportXML()
Dim xmlPath As String
Dim xslPath As String
xmlPath = "C:\Dossier\fichier.xml" ' ou URL HTTP
xslPath = "C:\Dossier\style.xslt" ' ou "" si aucune
Workbooks.OpenXML Filename:=xmlPath, Stylesheet:=xslPath
' Le classeur créé contient les données XML structurées
' Sauvegardez-le si besoin : ActiveWorkbook.SaveAs "C:\Dossier\resultat.xlsx", xlOpenXMLWorkbook
End Sub
- Exécutez (F5). Répétez l’appel
Workbooks.OpenXMLpour chaque fichier.
Astuce
Power Query (Données ▸ Obtenir des données ▸ À partir de fichier ▸ XML) offre une alternative moderne, sans code, rafraîchissable.
