プロが教えるわが家の防犯対策術!

お世話になります。

下記のようなXMLソースがあります。
下記のXMLソースをMSXML2.DOMDocumentで読み込んだ上で、
情報/大問/@形式="1" の内容の
「<中問><小問>a</小問><小問>b</小問><小問>c</小問></中問>
<中問><小問>あ</小問><小問>い</小問><小問>う</小問></中問>」
だけをタグ付きで取得したいのですが、どのような関数を使えばよいでしょうか?

大問 形式=1以下の内容をタグ付きで取得したいのです。
何卒よろしくお願いします。
XMLソース-----------------------
<情報>
<大問 形式=1>
<中問>
<小問>a</小問>
<小問>b</小問>
<小問>c</小問>
</中問>
<中問>
<小問>あ</小問>
<小問>い</小問>
<小問>う</小問>
</中問>
</大問>
<大問 形式=2>
<中問>
<小問>1</小問>
<小問>2</小問>
<小問>3</小問>
</中問>
<中問>
<小問>A</小問>
<小問>B</小問>
<小問>C</小問>
</中問>
</大問>
</情報>

A 回答 (1件)

Microsoft XML v3.0 以上だと、selectNodesメソッドでxpathが使えるようです。


Dim ObjXml As MSXML2.DOMDocument
Set ObjXml = CreateObject("MSXML2.DOMDocument")
ObjXml.Load("​hoge.xml")​
Set nlist = xmldom.selectNodes("//情報/大問/@形式=""1""")
Dim node As MSXML2.IXMLDOMNode
For Each node In nlist
Debug.Print node.nodeName
Debug.Print node.childNodes(0).nodeValue
Next

できるかなああ...
    • good
    • 0
この回答へのお礼

ありがとうございます。
試して見ます。

>>大問 形式=1以下の内容をタグ付きで取得したいのです。
タグ付で取れるかちょっと不安です。。。

お礼日時:2009/05/20 22:45

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!