【发布时间】:2022-03-29 17:14:09
【问题描述】:
我所做的只是将一段在不同子目录中运行良好的代码复制粘贴到我的新子目录中,然后更改我想要导航的 URL。第一个 sub 仍然有效,但第二个无效。我很困惑。
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,没有其他任何内容。我最好的选择是关闭我的工作簿并重新打开它,但问题仍然存在。您能提出的任何提示、解释或解决方案将不胜感激。
【问题讨论】:
-
您是否尝试将其关闭再打开?
-
好吧,我重新启动了我的整个计算机,它看起来并没有任何改变:p 除了半开玩笑之外,我不完全确定你的意思。
-
因此,如果您将新 sub 中的 URL 更改回旧 sub 中的 URL,它仍然会抛出错误吗?知道这一点会很方便,因此您可以将其范围缩小到网站问题或代码问题。
-
哦,这种恐怖也困扰着我。我的猜测是它与 IE 中的安全设置有关。请尝试设置 ie = New InternetExplorerMedium。这对我有帮助。
-
@Tim - 将其改回之前的 URL 使代码再次工作,因此看起来问题出在页面本身。