IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Comment faire un XMLImport en Excel 2000


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 17
    Par défaut Comment faire un XMLImport en Excel 2000
    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

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 17
    Par défaut Utilisation de MSXML
    La solution la plus simple pour moi a été d'utiliser l'analyseur Microsoft XML (MSXML).

    Ex de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    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.
    http://support.microsoft.com/kb/269238

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment numéroter les onglets sous excel 2000
    Par PtiteNanou dans le forum Excel
    Réponses: 1
    Dernier message: 17/03/2008, 11h52
  2. Comment faire des liens avec excel ?
    Par Vinceeboy dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/10/2007, 20h45
  3. [VBA-E]Comment faire pour écrire dans une page excel existante ?
    Par pauletta22 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/05/2006, 13h54
  4. Réponses: 4
    Dernier message: 24/02/2006, 22h54
  5. [VBA][Excel] Comment faire pour faire une boucle?
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 29
    Dernier message: 19/12/2005, 14h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo