【发布时间】:2015-10-27 00:16:42
【问题描述】:
我有一个 vba 代码,可以将数据从 Excel 表上传到网站。但是,该代码在 Win7 系统和 IE 浏览器 8 中运行良好,但在 Win8 IE 浏览器 11 上无法运行。 以下是部分代码:
Dim objIE As SHDocVw.InternetExplorer
Dim htmlDoc As MSHTML.HTMLDocument
Dim htmlFrame As MSHTML.HTMLFrameElement
Dim frame As HTMLIFrame
Dim htmlElement As HTMLDTElement
Dim myDoc As Object
Set curSheet = ActiveWorkbook.ActiveSheet
Set oShApp = CreateObject("Shell.Application")
For Each oWin In oShApp.Windows
If oWin.Name = "Windows Internet Explorer" Then
Set IE = oWin
Exit For
End If
Next
If IE Is Nothing Then
MsgBox ("Please sign into Avocado, then re-run this macro")
Set IE = New InternetExplorerMedium
IE.Visible = True
IE.navigate "https://www.google.com"
Exit Sub
End If
Sheets("Prepare").Select
fPathName = Cells(5, 5)
Call MakeFolders(fPathName)
Call MakeFolders2(fPathName)
Call MakeFolders3(fPathName)
'fFileName = fPathName & "\*.xls"
fFileName = Dir(fPathName & "\*.xls")
进入语句后代码循环运行:“If IE Is Nothing Then” 即使打开了google站点,程序仍然不断提示出msgBox,并一次又一次地重新打开网站,并且从未执行到最后一部分“Sheets(“Prepare”).Select”。我很困惑,因为它在 IE 8 浏览器中完美运行。我想知道IE11和IE8在vba IE功能方面是否有任何区别。 请查看它并给我一些想法,非常感谢您的帮助。非常感谢你。
【问题讨论】:
标签: vba excel internet-explorer internet-explorer-11