使用以下代码,我可以打开Internet Explorer窗口并导航到该网站。我想通过能够点击其中一个链接(例如“ Boxing / UFC”)的代码来走得更远。
Sub Run()
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.Navigate2 "http://www.bet365.com"
Do Until .ReadyState = 4: DoEvents: Loop
.Quit
End With
因为该链接会导致Javascript
onclick
事件(onclick="gS(1020,9);return false;"
),您能建议我使用的代码使VBA在运行VBA宏后不受用户干扰的情况下单击该链接吗? 最佳答案
在Internet Explorer中,您只需通过DOM API单击链接。
检索您感兴趣的DOM节点(A
),并在其上调用click()
。这还将触发所有关联的事件处理程序。
编辑:在您的情况下,使用VBA,请执行以下操作(未测试,我这里没有VBA)
Dim sideNav As IHTMLElement
Dim navLinks As IHTMLElementCollection
Dim currLink As IHTMLElement
Set sideNav = IE.document.getElementByID("sln")
Set navLinks = sideNav.all.tags("A")
For Each currLink In navLinks
If Trim(currLink.innerText) = "Boxing/UFC" Then
currLink.Click
End If
Next currLink