我有一个VBA代码,用于单击IE页面上的链接并打开一个新窗口。如何获取该子窗口的元素?
我尝试使用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,但无法访问页面上的元素。
答案 0 :(得分:2)
查看我在代码中插入的“if-then”语句。您可以使用标题或网址来标识孩子并将注意力集中在孩子身上。一旦它具有焦点,您就可以获得子窗口的元素。
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