VBA和IE8-输入值并进行搜索

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA和IE8-输入值并进行搜索相关的知识,希望对你有一定的参考价值。

我有一个基于Intranet的网站正在工作,我想输入SKU并使用VBA和IE8将数据收集到excel工作表中。当前正在等待Access许可证的批准和批准,以获取对我们的IBM as400服务器的访问权限。 IE8不支持getElementsByName,并且搜索栏没有ID,因此我在网上找到的大多数示例都不相关。

Sub scraper()

Dim item As Long

item = "10011" 'this will eventually be placed in a loop for multiple searches

Set objIE = CreateObject("InternetExplorer.Application")
  objIE.Visible = True
' navigate and download the web page
  objIE.Navigate "http://**********.aspx"
Do While objIE.ReadyState <> 4 Or objIE.Busy
    DoEvents
Loop

objIE.document.getElementsByName("input").Value = item


End Sub

这里是检查过的元素树的照片。如您所见,只有名称(输入)和类(st1),没有ID。我如何才能将搜索数据输入到该区域?我仍然使用IE8,尽管我确实也可以使用Chrome。...

capture

答案

objIE.document.getElementsByName("input").Value = item更改为objIE.document.getElementsByTagName("input")(0).Value = item最终解决了此问题。

IE8支持getElementsByTagName。

以上是关于VBA和IE8-输入值并进行搜索的主要内容,如果未能解决你的问题,请参考以下文章

在 Access VBA 中使用 openargs 搜索报告的问题

将行与标题进行比较,然后在列中插入值并在 VBA 中进行重复检查

在表列中查找值并返回表行号 - VBA

VBA在Web字段中输入数据

兼容ie8,firefox,chrome浏览器的代码片段

加速 Excel VBA 搜索脚本