0

我正在尝试从 SQL Server Reporting Services 站点导出报告,并且正在使用 Excel 07 和 IE7。我一直有代码

 Sub TestIE()
 Dim IE2 As Object
 Set IE2 = CreateObject("InternetExplorer.Application")
 IE2.Visible = True
 IE2.navigate "http://www.site.com"
 Application.StatusBar = "Accessing the report"
 Do While IE2.Busy
 Application.Wait DateAdd("s", 1, Now)
 Loop

 Dim CurrentWindow As HTMLWindowProxy: Set CurrentWindow = IE2.document.parentWindow
 Call CurrentWindow.execScript("$find('ctl31')")
 End Sub

我从中提取数据的网站显示为 Javascript。

 <div class="NormalButton">
 <a class="ActiveLink" onclick="$find('ctl31').exportReport('EXCEL');" 
 href="javascript:void(0)" style="padding:3px 8px 3px 8px;display:block;
 white-space:nowrap;text-decoration:none;">Excel</a>

当我运行我的宏时,这段代码什么都不做。

 Call CurrentWindow.execScript("$find('ctl31')")

但是当我使用站点源代码中的以下代码时,我得到了运行时错误 80020101。

 Call CurrentWindow.execScript("$find('ctl31').exportReport('EXCEL');")

谁能推荐我可以做些什么来提取这些数据?

4

1 回答 1

0

所以我完成了这个文件的基础知识。我专门针对 VBA 的 For Each 程序打开了一个新问题,但这里的主要 Javascript 问题已关闭。

于 2013-10-22T18:11:57.287 回答