備忘録:MSXMLでXPath

Sub test()
    Dim objDOM As New DOMDocument
    Dim rtResult As Boolean
    Dim nodeList As IXMLDOMNodeList
    Dim obj As IXMLDOMNode
    rtResult = objDOM.Load("C:\sample-1.xml")
'    rtResult = objDOM.Load("C:\work.xml")
    If rtResult = True Then
        objDOM.setProperty "SelectionLanguage", "XPath"
        objDOM.setProperty "SelectionNamespaces", "xmlns:w='http://schemas.microsoft.com/office/word/2003/wordml'"
        Set nodeList = objDOM.documentElement.selectNodes("/manyosyu/volume/poem/mkana[@a='2']")
'        Set nodeList = objDOM.documentElement.selectNodes("/w:wordDocument//w:t[position()<=2]")
'        Set nodeList = objDOM.documentElement.selectNodes("/w:wordDocument/w:fonts/w:font[position()<=2]")
        For Each obj In nodeList
            MsgBox obj.nodeName & " : " & obj.Text
        Next
    End If
    Set objDOM = Nothing

End Sub

??