2022年7月3日

【VBA】HTMLファイルの読込

VBAでHTMLファイルを読込、任意の要素の内容を取得する方法について説明します。

個人的に、あるIDのdiv要素内のhtml文字列を取得したくて調べました。

MSHTML.HTMLDocumentを使用することで実現できました。

MSHTML.HTMLDocument

このオブジェクトを使用するには、参照設定で、Microsoft HTML Object Libraryを参照する必要があります。

使用方法

Dim oXML     As New MSHTML.HTMLDocument
Dim DocHtml  As New MSHTML.HTMLDocument
Dim HtmlPath As String
Dim menuStr  As String

HtmlPath = "C:\TEST.html"

'ファイルの読込み
Set DocHtml = oXML.createDocumentFromUrl("file:///" & HtmlPath, vbNullString)

'文書内のidがside_menusの要素を取得する。
Set Element = htmlDoc.getElementById("side_menus")

'HTML文字列を取得
menuStr = Element.innerHTML

これでHTMLファイルの内容を取得できました。

Share this content: