関連記事の目次はこちら
お次は XMLファイルをとりあえず読み混む、という作業を行う。
内容を読む、というのは次のステップとする。
・XMLを読み込むためのブックを、任意のフォルダ、任意のファイル名で作成する。新規作成の場合、必ず一度は保存し、ファイルの実態を作成すること。また、参照設定も忘れていないかを確認すること。
・前回作成した sample01.xml を上記の[任意のフォルダ]に入れる。
・上記の任意のファイルのIDEでVBAのコードを書く。今回は標準モジュールを追加し、そこに書くことにしよう。
こんな感じ。
読み込みがうまくいけば「読み込み成功」が出るし、うまく行かなければエラーの原因が出る。
わざとエラーになるようにXMLを加工し、どういうエラーが出るかを試してみると、トラブル時の対応に強くなるのでお勧めする。
正常に読めることが確認できれば、次は内容の読み取りである。
お次は XMLファイルをとりあえず読み混む、という作業を行う。
内容を読む、というのは次のステップとする。
・XMLを読み込むためのブックを、任意のフォルダ、任意のファイル名で作成する。新規作成の場合、必ず一度は保存し、ファイルの実態を作成すること。また、参照設定も忘れていないかを確認すること。
・前回作成した sample01.xml を上記の[任意のフォルダ]に入れる。
・上記の任意のファイルのIDEでVBAのコードを書く。今回は標準モジュールを追加し、そこに書くことにしよう。
Sub ReadXML()
Dim XDoc As MSXML2.DOMDocument
Set XDoc = New MSXML2.DOMDocument
If XDoc.Load(ThisWorkbook.Path & "\sample01.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 "読み込み成功"
Set XDoc = Nothing
End Sub
こんな感じ。
読み込みがうまくいけば「読み込み成功」が出るし、うまく行かなければエラーの原因が出る。
わざとエラーになるようにXMLを加工し、どういうエラーが出るかを試してみると、トラブル時の対応に強くなるのでお勧めする。
正常に読めることが確認できれば、次は内容の読み取りである。