excel - 我怎样才能点击源代码中的超文本?
问题描述
我已经开始编写这些命令行,但似乎工作正常......
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = Range("Name").Row And Target.Column = Range("Name").Column Then
Dim HTMLdoc As HTMLDocument
Dim downloadLink As HTMLAnchorElement
Dim i As Long
Dim ie As New InternetExplorer
With ie
.Visible = True
.navigate "http://www.XXXXXXXXXX" & Range("Name").Value
While .Busy Or .readyState <> 4
DoEvents
Wend
Set HTMLdoc = .document
End With
Dim Elmt As IHTMLElement
Dim Elm_Children As IHTMLElementCollection
Elm = HTMLDocument.getElementById("tableList2")
Elm_Children = Elm.Children
ElmChildren.FirstChild.Click
ie.Quit
End If
End Sub
源代码如下所示:
主要思想是打开一个搜索页面并在Excel工作表中列出一个搜索请求,然后单击新页面中的第一个命中和最后一个报废信息:将这些信息粘贴在同一个工作表中但不同的行中。
非常感谢您的帮助 :-)
解决方案
你可以试试
HTMLDoc.querySelector("#tableList2 .lstw4 a[onclick]").Click
甚至
HTMLDoc.querySelector("#tableList2 [onclick*='openMainWindow']").Click
这些使用#
id 选择器来获取表,.
在后代组合器中的第一个类选择器用于获取表中具有类的元素lstw4
,以上都使用属性选择器来定位onclick
属性。第一个简单地通过属性和父类的第一个子a
标签,第二个通过其值包含。onclick
lstw4
onclick
openMainWindow