2

HTML ドキュメントを操作する VBA コードを書いています。HTML を操作できるように、文書はテキストとして開かれます。したがって:

Dim oWordDoc As Word.Document
Set oWordDoc = Documents.Open(FileName:=strFolder & "\" & strFileName, _
    Format:=wdOpenFormatText)

HTML には、ID でアクセスできるようにしたいいくつかのメタ タグが含まれています。これは私がこれを試みようとしたコードです:

Dim objHtmlDoc As HTMLDocument
Dim objMetaTag As HTMLMetaElement
Set objHtmlDoc = oWordDoc
Set objMetaTag = objHtmlDoc.getElementById("keywords")

ただし、次の行で Type Mismatch エラーが発生します。

Set objHtmlDoc = oWordDoc

objHtmlDoc を oWordDoc.content に設定しようとしましたが、同じエラーが発生しました。Word.Document オブジェクトを HTMLDocument オブジェクトに変換して、HTMLDocument を Word.Document に設定できるようにする方法はありますか? または、これを実行するために独自の getElementbyID 関数を開発する必要がありますか?

ありがとう。

4

1 に答える 1

3

私が提案していた代替案。

Sub Sample()
    Dim objHtmlDoc As HTMLDocument
    Dim objMetaTag As HTMLMetaElement
    Dim IE As Object

    Set IE = CreateObject("InternetExplorer.Application")
    IE.Visible = True

    IE.navigate "C:\Sample.Htm"

    Set objHtmlDoc = IE.Document
    Set objMetaTag = objHtmlDoc.getElementById("keywords")
End Sub
于 2012-07-03T19:58:49.007 に答える