excelvbaでxmlファイルの内容の抽出
excelvbaでDomを使用し指定したxmlファイルを読み込んでselectNodes("")で欲しい内容を抽出をすることは出来ました。
しかしxmlファイルが大量にあり一つ一つファイルを指定して抽出するのは時間がかかりすぎてしまいます。
ですのでフォルダ内にあるすべてのxmlファイルからselectNodes("")で欲しい内容を抽出したいのですが出来ますでしょうか?
また抽出したものをmdbのテーブルにレコードとして保存したいのですが
現在はexcelのセルに書き込んでからmdbに入れているのですが
vbaで欲しい内容を抽出した結果をそのままmdbに保存する方法はありますか?
お願い致します。
下記に指定したxmlファイルを読み込んで欲しい内容を抽出するというのを行ったときのものを載せておきます。
Dim XDoc As MSXML2.DOMDocument
Dim Node As MSXML2.IXMLDOMNode
Sub てすと()
Set XDoc = New MSXML2.DOMDocument
If XDoc.Load(ThisWorkbook.Path & "\テスト.xml") = False Then
With XDoc.parseError
Debug.Print .errorCode & " / " & Replace(.reason, vbCrLf, "")
Debug.Print "行 :" & .Line & " , カラム :" & .linepos
Debug.Print "内容 :" & .srcText
Debug.Print ""
Debug.Print "ファイル(URL) :" & .url
Debug.Print "ファイル先頭からの位置 :" & .filepos
End With
Exit Sub
End If
Debug.Print "読み込み成功"
For Each Node In XDoc.selectNodes("抽出したい内容")
Cells(1, 1) = Node.Text
Debug.Print Node.Text
Next
Set XDoc = Nothing
End Sub
お礼
ありがとうございます。 XML-parserなどが必要なのですね。 なくても出来るかと思っていました。 ダウンロードして早速試してみます。