是否可以使用 vba 在 Internet Explorer 中找到所有变量的列表

Is it possible to find a list of all variables in internet explorer using vba

这是我的情况。对于工作,我们使用基于 Java 的系统,该系统会在来电时提取帐户信息。我创建了一个访问表单,使用 vba 根据帐号自动识别帐户类型和属性,但是第一次需要手动输入号码,然后保存到数据库。

出于隐私原因,我宁愿不保存数据,即使我保留的帐号不超过 5 位。

如果我能找到一种方法从打开的页面调用所需的变量,那么就没有必要保存这些值了。

我已经有代码来识别已经打开的页面并将 oWin 设置为 IE。然而,该网站使用框架内的框架,找到一个单一的变量一直让我发疯。

所以问题来了:是否有一种 vba 方法可以在搜索所有帧时使用 vba 列出每个变量及其路径?

我只能通过单击查看源代码来访问源代码,并且开发人员 (f12) 在我可以访问的所有计算机上都被禁用。

我知道变量存在并且在源代码中写成

商户号=xxxxxx2290001234

我为安全添加了 X。

我认为您在这里所说的是网页上的 DIV 而不是变量。

源代码显示了 HTML 代码,其中未显示变量。

一般信息显示在 DIVs 或标签中,您可以尝试使用 VBA 代码访问此信息,方法是使用其 ID 或名称或任何方式查找那些 DIVs其他 属性.

这是一个 VBA 代码示例,用于从 iframe 访问值。

Sub demo3()

    Dim URL As String
    Dim IE As Object
    Dim doc As HTMLDocument

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


    URL = "http://localhost/346.html"

    IE.navigate URL

    Do While IE.readyState = 4: DoEvents: Loop
    Do Until IE.readyState = 4: DoEvents: Loop
    Set doc = IE.document

    Dim iframeDoc As MSHTML.HTMLDocument
    Set iframeDoc = doc.frames("frame1").document
    If iframeDoc Is Nothing Then
        Debug.Print "IFrame with name 'iframename' was not found."
        IE.Quit
        Exit Sub
    End If

    Dim element As MSHTML.HTMLDivElement
    Set element = iframeDoc.querySelector("#div1")
    If element Is Nothing Then
        Debug.Print "element within iframe was not found."
        IE.Quit
        Exit Sub
    Else
        Debug.Print element.innerHTML
    End If

  '  Set IE = Nothing
  '  Set objElement = Nothing
  '  Set objCollection = Nothing

End Sub

输出:

您可以参考此示例并尝试开发自己的代码可能有助于获得预期的结果。如果您还有其他问题,请告诉我们。