Comment faire un XMLImport en Excel 2000

  • Initiateur de la discussion Initiateur de la discussion Spirula
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

Spirula

Guest
Bonjour,

Je cherche à importer un fichier de données XML dans une feuille EXCEL version 2000.

Les fonctionnalités XML, comme XMLImport ne sont helas disponibles qu'à partir de la version 2003 de d'Excel!

Je cherche donc à faire exactement la même chose que la methode XMLImport mais sans elle et en Excel 2000.

Si vous avez des astuces, codes VBA ou autre idées, ... je suis preneur 🙂

D'avance un grand Merci
 
Re : Comment faire un XMLImport en Excel 2000

bonjour spirula

je viens de trouver cela avec une petite recherche sous google

Prendre le probleme dans l'autre sens
Dans ta feuille asp, tu crée une feuille xls comme suit:

set exDoc = CreateObject("Excel.Application")
exDoc.Application.Visible = FALSE
'met un numéro de page dans le classeur
exDoc.Application.SheetsInNewWorkbook = 1
'enlève les messages d'alert
exDoc.Application.DisplayAlerts = FALSE
' crée un nouveau document
exDoc.Application.Workbooks.Add

ensuite tu parses ton fichier xml, tu récupères les infos utiles, et tu les "colles" dans ton fichier excel.

set objXML = Server.CreateObject("Microsoft.XMLDOM")
xmlFILE = Server.mappath("myFile.xml")
objXML.load(xmlFILE)
set root = objXML.documentElement
for i = 1 to root.childNodes.length - 1
set monText = root.childNodes.item(i).text
' met du texte dans le doc Excel
exDoc.ActiveSheet.Cells(1,1).Value = monText
next

Voici l'adresse Ou j'ai piqué le code
 
Utilisation de MSXML

La solution la plus simple pour moi a été d'utiliser l'analyseur Microsoft XML (MSXML).

Ex de code:
Code:
Sub XMLImport2000(Doc As String)
Dim xmlDoc As DOMDocument
Dim root_node As IXMLDOMElement
Dim i As Long
Dim j As Long

Set xmlDoc = New DOMDocument

xmlDoc.async = False
xmlDoc.Load Doc

Set root_node = xmlDoc.documentElement

For j = 0 To root_node.childNodes.Length - 1 'lecture de tous les enregistrements
   For i = 0 To root_node.childNodes.Item(j).childNodes.Length - 1
    If j = 0 Then
        Cells(1, i + 1).Font.Bold = True
        Cells(1, i + 1) = root_node.childNodes.Item(j).childNodes.Item(i).nodeName
    End If
    Cells(j + 2, i + 1) = root_node.childNodes.Item(j).childNodes.Item(i).nodeTypedValue
   Next
Next

End Sub


Note: Attention car des versions différentes de MSXML sont comprises dans différents produits Microsoft tels que Microsoft Windows, Microsoft Internet Explorer, Microsoft Office... MSXML est également mis à jour lorsque vous installez des mises à jour logicielles pour un certain nombre de produits Microsoft.
List of Microsoft XML Parser (MSXML) versions
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 recherche idée
Réponses
6
Affichages
923
Retour