c.Value - это текст из ячейки (типичные значения: имя, тип, вес, валюта, но может быть любым) в первой строке листа.
filenames - это цикл из Dir () в основном зацикливание XML-файлов в папке.
Эти xmls могут иметь наименьший уровень узла (например, «вес»), но в нескольких разных родительских узлах.Т.е. эти 3 разных xpaths: // Client / personal / weight и // Client / details / weight и //Client/details/info/weight.
У меня есть этот код:
Dim aDoc As DOMDocument
Dim aNode As IXMLDOMNode
Set aDoc = LoadXmlDoc(filenames(f))
Set aNodes = aDoc.getElementsByTagName(c.Value)
For f = 1 To UBound(filenames)
If aNodes.Length > 0 Then 'if at least one node is present
For Each aNode In aNodes 'loop thru each occurence of a node
c.Offset(f, 0).Value = aNode.Text & "parent is " & aNode.parentNode.parentNode
Next
End If
Nxt f
Я пытаюсь получить отдельный список xpath для дочернего узла, который я указываю в c.value.
Например,
if c.value is weight
I 'Я пытаюсь вернуть этот список:
//Client/personal/weight
//Client/details/weight
//Client/details/info/weight.
http://msdn.microsoft.com/en-us/library/aa163921(office.10).aspx - хорошая ссылка, но я не могу найти, как получить xpath от дочернего узла.Мне только удалось получить непосредственный родительский узел.