【问题标题】:Is it possible to find a list of all variables in internet explorer using vba是否可以使用 vba 在 Internet Explorer 中找到所有变量的列表
【发布时间】:2019-12-07 14:28:59
【问题描述】:

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

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

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

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

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

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

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

MerchantNumber =xxxxxx2290001234

我为安全添加了 X。

【问题讨论】:

  • 您好,欢迎来到 SO。我无法理解你现在写的问题:感觉有点太宽泛了。看看它,然后尝试将信息缩减到必要的最小值:很可能,您可以通过更深入地分析问题并突出显示需要干预的实际代码片段来优化您的问题。
  • 使用框架集合。

标签: vba variables internet-explorer find frames


【解决方案1】:

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

源代码显示了 HTML 代码和未在其中显示的变量。

通常信息显示在 DIV 或标签中,您可以尝试使用 VBA 代码通过使用其 ID 或名称或任何其他属性查找这些 DIV 来访问此信息。

这是一个从 iframe 访问值的 VBA 代码示例。

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

输出:

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

【讨论】:

    猜你喜欢
    • 2012-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多