我所做的只是将一段代码在一个不同的子代码中复制粘贴到我的新子代码中并更改我想要导航的URL。第一个子仍然有效,但第二个没有。我很难过。
Dim ie As InternetExplorer
Dim html As HTMLDocument
Set ie = New InternetExplorer
ie.Visible = False
ie.navigate "http://cesp.hma.eu/Contacts"
With ie
Do Until .READYSTATE = 4: DoEvents: Loop
Do While .Busy: DoEvents: Loop
End With
Set html = ie.document
Set ie = Nothing
Application.StatusBar = ""
使用F8逐步检查代码,似乎URL忽略ie.Visible = False
(当我到达With ie
时它会打开),然后在Do While .Busy: DoEvents: Loop
上弹出错误
老实说,我不知道从哪里开始寻找解决方法,因为我字面上只改变了URL而没有别的。我最好的办法是关闭我的工作簿并重新打开它,但问题仍然存在。您可以提出的任何提示,解释或解决方案将不胜感激。
答案 0 :(得分:6)
这可能与IE中的安全设置有关。根据@ Vigneshts88 here的建议,尝试更改
Set ie = New InternetExplorer
为:
Set ie = New InternetExplorerMedium
正如@Mike在上述答案中的评论中指出的那样,InternetExplorerMedium
需要引用Microsoft Internet Controls
答案 1 :(得分:0)
是的宝贝!
设置ie = New InternetExplorerMedium
为我修好了!
迫不及待地想把这些东西投入使用。