Excel Web Scraping – ul列表项上的fireEvent

提前感谢您提供任何帮助。 我正在尝试激活与Excel VBA的链接来更改仪表板呈现的数据的视图。 我已经设法执行login和导航过程,并相信在这一步之后,抓取元素将会顺利运行。 我不相信我的目标是正确的,或者没有正确地构buildVBA序列。

我试图在下面的HTML中触发“顾问视图”:

<div style="width:100%; clear:both"> <ul class="tab_menu clearfix" style="padding-top:5px;"> <li id="site_ti" class="table_tab_item"> <a href="#" onclick="update_table_tab('site'); return false;">By Site</a> </li> <li id="director_ti" class="table_tab_item"> <a href="#" onclick="update_table_tab('director'); return false;">By Director</a> </li> <li id="team_lead_ti" class="table_tab_item"> <a href="#" onclick="update_table_tab('team_lead'); return false;">By Team Manager</a> </li> <li id="consultant_ti" class="table_tab_item"> <a href="#" onclick="update_table_tab('consultant'); return false;">By Consultant</a> </li> </ul> 

我已经使用了下面的例程,但没有结果:

这是公共小组开始处的声明:

 Public Sub Huddle_Report_Scrape(ObjIE) Dim ie As SHDocVw.InternetExplorer Dim doc As MSHTML.HTMLDocument 'If you have a reference to the HTML Object Library Dim objShell, obj, objInputs, objButtons As Object Dim htmldoc As MSHTML.IHTMLDocument 'Document object Dim tbl As MSHTML.IHTMLElementCollection Dim eleColtr As MSHTML.IHTMLElementCollection 'Element collection for tr tags Dim eleColtd As MSHTML.IHTMLElementCollection 'Element collection for td tags Dim eleRow As MSHTML.IHTMLElement 'Row elements Dim eleCol As MSHTML.IHTMLElement 'Column elements Dim Table As MSHTML.HTMLTable Dim row As MSHTML.HTMLTableRow Dim cell As MSHTML.HTMLTableCell Dim col As MSHTML.HTMLTableCol 

以下是我打电话来触发顾问视图的function。

 Function FnConsultantView(ObjPage) With ObjPage Set li = .getElementByValue("consultant") With li .Focus .FireEvent "onclick" End With End With MsgBox ("Operation Completed") 

我也试图使用下面的post中的元素,但没有太多的运气: FireEvent和IE11

它与FireEvent一起工作。

 Function FnConsultantView(ObjPage) With ObjPage .getElementById ("consultant_ti") .getElementsByTagName("a")(0).FireEvent ("onclick") End With MsgBox ("Operation Completed")