VBA - lecture d'un fichier XML à géométrie variable
Bonjour à tous,
Je commence à comprendre le fonctionnement du DOM et j'ai pu produire ou reproduire certains scripts permettant la lecture et l'extraction de données présentes dans un fichier XML.
Cependant la plus part de mes lecture présentent du code appliqué à un fichier présentant une profondeur de "NOEUDS" définie. ci-dessous un exemple de code qui marche très bien pour 3 niveaux à partir d'un noeud selectionné :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
Sub W3C1()
Dim xmlDoc As Object
Dim RacineElement, BookElement As Object
Set xmlDoc = CreateObject("Microsoft.XMLDOM")
xmlDoc.Async = "false"
xmlDoc.Load (ThisWorkbook.Path & "\BOOKSHOP.xml")
Set RacineElement = xmlDoc.SelectNodes("//bookstore")
Dim Nv1, Nv2, Nv3 As Object
For Each Nv1 In RacineElement
Debug.Print Nv1.BaseName & vbCrLf
For Each Nv2 In Nv1.ChildNodes
Debug.Print Nv2.BaseName
For Each Nv3 In Nv2.ChildNodes
Debug.Print Nv3.BaseName & " : " & Nv3.text
Next
Debug.Print vbCrLf
Next
Next
Set xmlDoc = Nothing
End Sub |
Au cas présent, le fichier xml utilisé est tiré d'un exemple tiré de ce site : https://www.w3schools.com/xml/dom_intro.asp
Ma question : Est-il possible techniquement d'adapter ce code à N noeuds enfants ?
Merci d'avance pour vos retours !
Très cordialement