在VBA互联网浏览器的子窗口(Internet Explorer child window in V

2019-09-30 07:29发布

我有一个点击一个IE页面上的链接和新窗口中打开一个VBA代码。 我怎样才能像子窗口的要素是什么?

我试着用Shell.application。 是否有任何其他的方法呢?

Set objShell = CreateObject("shell.application")
IEcount= objShell.Windows.Count
 For x = 0 To iecount
    On Error Resume Next
    Debug.Print x, objShell.Windows(x).document.Location
 Next x

我得到的窗口号和它的URL,但不能访问页面上的元素。

Answer 1:

看看“如果 - 那么”语句,我插你的代码中。 您可以使用标题或URL,以确定它的孩子,并设置焦点。 一旦拥有了焦点,就可以得到子窗口的元素。

Set objShell = CreateObject("Shell.Application")
IE_count = objShell.Windows.Count
For x = 0 To (IE_count - 1)
    On Error Resume Next    ' sometimes more web pages are counted than are open
    my_url = objShell.Windows(x).Document.Location
    my_title = objShell.Windows(x).Document.Title

    If my_title Like "Something that identifies your child window" Then
        Set ie = objShell.Windows(x)
        Exit For
    Else
    End If
Next


文章来源: Internet Explorer child window in VBA