VBA onclick事件Internet Explorer无法正常工作

时间:2017-01-08 00:06:06

标签: javascript excel vba

我是VBA的新手,我试图自动化网络资源管理器导航,但有许多困难。 我编写了一个脚本,可以导航到一个网页并搜索代码。结果是一个表(" dr-table-cell rich-table-cell"),其中一行包含搜索到的项目(" 02090000062571"),显示为另一个页面的链接。这里是该表的代码:

<td class="dr-table-cell rich-table-cell" 
    id="formRicercaPdr:pdrTable:0:j_id134">
     <a onclick="if(typeof jsfcljs == 'function'){jsfcljs(document.forms['formRicercaPdr'],'formRicercaPdr:pdrTable:0:j_id136,formRicercaPdr:pdrTable:0:j_id136','');}return false" 
         href="#">02090000062571</a>
 </td>

我的问题是点击&#34; 02090000062571&#34; href按钮(是搜索的项目)并执行显示另一个表的javascript功能。

这是我的代码:

Sub TriggerDivClick()
Dim ie As SHDocVw.InternetExplorer
Dim doc As MSHTML.HTMLDocument
Dim div As HTMLDivElement
Dim url As String

url = "some URL"

Set ie = New SHDocVw.InternetExplorer

ie.Visible = True
ie.Navigate url

While ie.Busy Or ie.ReadyState <> READYSTATE_COMPLETE
    DoEvents
Wend
Set pdr_button = ie.Document.getElementsByClassName("dr-table-cell rich-table-cell")
For Each a In pdr_button
'here comes the problems 

a.Item(0).FireEvent ("click()")

Next a 

End Sub

我可以找到该项目,但我无法执行代码以按下按钮。 我正在使用IE 11。

感谢您的耐心等待!

1 个答案:

答案 0 :(得分:0)

这应该有效:

ie.Document.getElementById("formRicercaPdr:pdrTable:0:j_id13‌​4"). _
     getElementsByTag‌​Name("a")(0).Click