Vba 对象没有';获取bing搜索的第一个结果时不支持此属性或方法
我正在尝试获取bing搜索的第一个链接结果: 示例url:大学统计和运筹学与工业应用MRes 但我在这一行中遇到运行时错误438: 此处设置objLink=objResultDiv.getelementsbytagname(“a”)(0)错误Vba 对象没有';获取bing搜索的第一个结果时不支持此属性或方法,vba,excel,internet-explorer,Vba,Excel,Internet Explorer,我正在尝试获取bing搜索的第一个链接结果: 示例url:大学统计和运筹学与工业应用MRes 但我在这一行中遇到运行时错误438: 此处设置objLink=objResultDiv.getelementsbytagname(“a”)(0)错误 Sub-getURL() 模糊对象 我和你一样长,我和你一样长 暗卷 Dim objResultDiv 模糊对象链接 Application.ScreenUpdating=True fI=INP.Range(“D”和Rows.Count).End(xlUp
Sub-getURL()
模糊对象
我和你一样长,我和你一样长
暗卷
Dim objResultDiv
模糊对象链接
Application.ScreenUpdating=True
fI=INP.Range(“D”和Rows.Count).End(xlUp).Row
Set objIE=CreateObject(“InternetExplorer.Application”)
与奥布杰
.Visible=True
.Silent=True
对于i=1到fI
.导航输入范围(“D”和i).值
请稍等片刻。忙碌或。准备就绪状态4
多芬特
环
fURL=空
Set objResultDiv=objIE.document.getelementsbyclassname(“b_算法”)
此处设置objLink=objResultDiv.getelementsbytagname(“a”)(0)错误
输入范围(“E”&i)=objLink.href
接下来我
以
objIE,退出
设置对象=无
端接头
GetElementsByCassName返回元素的集合。因此,您需要指定要返回哪一个。例如,要返回第一个元素(索引从0开始)
希望这有帮助 什么是INP?声明在哪里?@danieltakeshi INP是工作表属性窗口中定义的工作表名称错误表示
objResultDiv
没有getelementsbytagname
成员,即您没有使用您认为正在使用的对象类型。
Sub getURL()
Dim objIE As Object
Dim i As Long, fI As Long
Dim fURL
Dim objResultDiv
Dim objLink
Application.ScreenUpdating = True
fI = INP.Range("D" & Rows.Count).End(xlUp).Row
Set objIE = CreateObject("InternetExplorer.Application")
With objIE
.Visible = True
.Silent = True
For i = 1 To fI
.Navigate INP.Range("D" & i).Value
Do While .Busy Or .readyState <> 4
DoEvents
Loop
fURL = Empty
Set objResultDiv = objIE.document.getelementsbyclassname("b_algo")
Set objLink = objResultDiv.getelementsbytagname("a")(0) 'Error here
INP.Range("E" & i) = objLink.href
Next i
End With
objIE.Quit
Set objIE = Nothing
End Sub
Set objResultDiv = objIE.document.getElementsByClassname("b_algo")(0)