单击HTML列表中的链接

时间:2017-06-22 22:48:38

标签: excel vba excel-vba internet-explorer

我尝试使用Excel的IE自动化工具点击此网站用户个人资料中的网站链接。在VBA中使用以下内容:

ie.Document.getElementsByClassName("website")(0).getElementsByTagName("a")(0).Click

但不断收到运行时错误'''跑的时候。有关如何解决这个问题的建议或者点击此链接是否可行?感谢。

编辑(完整代码):

Dim ie As InternetExplorer
Dim html As HTMLDocument
Set ie = New InternetExplorer
ie.Visible = True
ie.Navigate "site"

Do While ie.READYSTATE <> READYSTATE_COMPLETE
DoEvents
Loop

Set objA = ie.Document.getElementsByClassName("website")(0) 'GETTIN ERROR HERE
objA.getElementsByTagName("a")(0).Click
End Sub

1 个答案:

答案 0 :(得分:0)

这里似乎有一些小问题。

有人认为.Click并不总能正常运作,我建议您使用.getAttribute("href")并结合ie.Navigate()

另一个原因是你似乎定义了html然后再也不用它了。

以下代码有效:

Sub test()
Dim ie As InternetExplorer
Dim html As HTMLDocument
Set ie = New InternetExplorer
ie.Visible = True
ie.Navigate "http://beverlyhills.yourkwoffice.com/mcj/user/AssociateSearchSubmitAction.do?orgId=5058&lastName=&firstName=&rows=100"

Do While ie.READYSTATE <> READYSTATE_COMPLETE
DoEvents
Loop

Set html = ie.Document

Set objA = html.getElementsByClassName("website")(0).getElementsByTagName("a")(0)
ie.Navigate (objA.getAttribute("href"))
End Sub