我想在一个选项卡中搜索城市,然后在另一个选项卡中打开生成的链接。如果我单独运行这些操作,一切都可以正常工作,但是我无法使其共同起作用。有什么错?
调试器指向.Document.getElementsByName("q")(0).Value = "Dublin"
说
运行时错误'-2147467259(80004005(':方法'document'对象 'iwebbrowser 2'失败
这是我的代码:
Option Explicit
Sub GetFlightRates()
Dim appIE As Object
Set appIE = CreateObject("internetexplorer.application")
With appIE
.Navigate "https://maps.google.com"
.Document.getElementsByName("q")(0).Value = "Dublin"
.Document.getElementsByClassName("searchbox-searchbutton")(0).Click
.Navigate "https://www.google.co.in/flights/", CLng(2048) '2nd
.Visible = True
End With
Do While appIE.Busy
DoEvents
Loop
'appIE.Quit
Set appIE = Nothing
End Sub
您需要一个页面加载等待,然后尝试访问.document
Option Explicit
Sub OpenTabs()
Dim appIE As Object
Set appIE = CreateObject("internetexplorer.application")
With appIE
.Visible = True
.navigate "https://maps.google.com"
While .Busy Or .readyState < 4: DoEvents: Wend
.document.getElementsByName("q")(0).Value = "Dublin"
.document.getElementsByClassName("searchbox-searchbutton")(0).Click
.navigate "https://www.google.co.in/flights/", CLng(2048) '2nd
While .Busy Or .readyState < 4: DoEvents: Wend
End With
Stop
'appIE.Quit
Set appIE = Nothing
End Sub