首页 > 解决方案 > VBA Microsoft HTML对象库HTML文档HTMLUnknownElement不显示innerHTML或innerText

问题描述

在 Office 365 MSO 版本 16.0.x 64 位的 MS Access 上使用 VBA 7.1 我参考了 Microsoft HTML 对象库 (mshtml.dll) 11.0.x 集

我有以下代码

    Dim myHTMLDoc As New HTMLDocument
    Dim myEnvironTag As HTMLUnknownElement
    
    myHTMLDoc.body.innerHTML = "some text <environ>EnvironmentURL</environ> some other text"
    
    For Each myEnvironTag In myHTMLDoc.getElementsByTagName("environ")
        MsgBox myEnvironTag.innerHTML
        MsgBox myEnvironTag.innerText
    Next myEnvironTag

从字符串<environ>EnvironmentURL</environ>

我正在尝试返回字符串EnvironmentURL

在上面的代码示例中,两个 MessageBox 都返回零长度字符串。

知道如何在这样的自定义标签中返回字符串吗?

提前致谢

标签: htmlexcelvbainnerhtmlinnertext

解决方案


这种解决方法有效,但......不知道为什么如果没有替换功能将其更改为锚标记,它就不起作用?

    Dim myHTMLDoc As New HTMLDocument
    Dim myEnvironTag As HTMLAnchorElement
    
    myHTMLDoc.body.innerHTML = Replace(Replace("some text <environ>EnvironmentURL</environ> some other text", "<environ>", "<a>"), "</environ>", "</a>")
    
    For Each myEnvironTag In myHTMLDoc.getElementsByTagName("a")
        MsgBox myEnvironTag.innerHTML
        MsgBox myEnvironTag.innerText
    Next myEnvironTag


推荐阅读