使用 VBA 检查页面上是否存在元素

2023-12-02

我有 15,000 种产品,我需要知道它们是 X、Y 还是 Z。下面的代码在亚马逊上检查产品是否属于 XYZ 类型。

上帝帮助我,它确实有效。唯一的例外是当它搜索亚马逊不再销售的产品时。然后我要查找的包含我正在搜索的产品描述的元素ID在页面上不存在,并且代码在线中断

text = document.getelementbyID("result_0").innertext

出现错误“未设置对象变量或 With 块变量”。

在继续执行其余代码之前,如何检查该元素是否存在?

Thanks!

Sam

Sub LetsAutomateIE()

Dim barcode As String
Dim rowe As Integer
Dim document As HTMLDocument
Set ie = CreateObject("InternetExplorer.Application")
Dim Element As HTMLDivElement
Dim text As String
Dim pos As Integer

rowe = 2

While Not IsEmpty(Cells(rowe, 2))

barcode = Cells(rowe, "B").Value

With ie
.Visible = False
.navigate2 "https://www.amazon.co.uk/s/ref=nb_sb_noss_1?url=search-    
alias%3Daps&field-keywords=" & barcode
Do Until ie.readyState = 4
Loop
End With

Set document = ie.document

text = document.getElementById("result_0").innerText

If InStr(text, "X") Or InStr(text, "Y") Or InStr(text,     
"Z") <> 0 Then pos = 1

If pos <> 0 Then Cells(rowe, 4) = "Y" Else Cells(rowe, 4) = "N"

rowe = rowe + 1

Wend

Set ie = Nothing

End Sub

发布替代方案,以防最佳答案对其他人不起作用:

使用 IsObject() 检查后,我仍然收到运行时错误“91”

如果 ObjIE 是 InternetExplorer 对象,则 IsObject() 工作正常,但我使用的是 InternetExplorerMedium 对象,并且必须用此对象进行验证,因为它返回一个无对象:

If Not objIE.document.getElementById("e164NumberMask") Is Nothing Then
    'do true stuff
Else
    'do false stuff
End If
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 VBA 检查页面上是否存在元素 的相关文章

  • 在 Swift 应用程序中从 Excel 文档读取数据

    我有一个 Excel 文档 其中包含一些表格和大量数据点 我想从中读取内容以填充一些 UICollectionView 单元格和我的应用程序的其他部分 就像是 Country Temperature Cost Spain 23 80 Fra
  • 如何将 xlsx 读取为 pandas 数据框,并将公式作为字符串

    我有一个包含一些计算列的 Excel 文件 例如 我在 a 列中有一些数据 而 b 列是使用 a 列中的值计算的 我需要将新数据附加到 a 列并计算 b 列并保存文件 import pandas as pd df pd DataFrame
  • 合法 .xlsx 文件上的 openpyxl load_workbook() 会导致 zipfile.BadZipFile 错误

    我试图做的是将数据帧数据附加到现有的合法 Excel 文件中 我使用了 openpyxl 中的 load workbook 函数 但它系统地返回错误 这是一些在我的机器上崩溃的代码 from openpyxl import load wor
  • 使用@@Identity

    我想知道如何从另一个数据库的表中获取最近生成的自动编号值 目前我正在这样做 Do Until rsA EOF Inserts new row here works Set rs New ADODB Recordset rs Open SEL
  • Excel 自动填充列 X++++..Y++..Z+

    如何自动填充之间的值 选择 A 列 CTRL G gt Blanks gt OK Type press UpArrow 然后按CTRL ENTER See 这个链接 http www techrepublic com blog msoffi
  • 如何在 to_excel() 和 read_excel() 之间保留 pandas 多重索引?

    根据 pandas 文档读取Excel http pandas pydata org pandas docs dev generated pandas io excel read excel html 我可以将索引列名称放在单独的行上 然后
  • 使用 If 语句执行 Do Until 直到达到特定值

    我正在处理一份大数据表 我需要代码从特定单元格中减去 直到该值大于某个数字 如果这个数字没有达到 我希望它变成0 例如如果A3 A2 gt Q5 then E3 A3 A2 if lt Q5 do A3 A1 如果这不起作用E2 0 我需要
  • IE 测试器中的警报框

    IE Tester 没有控制台 并且该软件中的警报框似乎被忽略 这是预期的行为吗 如果是这样 如何使用这个工具调试 javascript 我安装了调试栏 但除了允许我查看 DOM 之外 它似乎没有做任何有用的事情 我需要能够在脚本执行期间检
  • 为什么 IE 不将

    我正在运行这个示例脚本 http jsfiddle net KsV2F 2 使用IE var select select var button button button click function var option
  • 使用 Python 将 Excel 中的图表导出为图像

    我一直在尝试将 Excel 中的图表导出为 Python 中的图像文件 JPG 或 ING 我正在查看 WIn32com 这是我到目前为止所拥有的 import win32com client as win32 excel win32 ge
  • 将图表导出为图像有时会生成空文件

    I m doing a macro that exports all the charts in the sheet and then opens Outlook and attaches them However I ve noticed
  • 如何将 JavaScript 图表导出到 Excel 文件 (HighCharts)

    我必须将 Javascript 图表 HighCharts 导出到 Excel 文件中 图表在div中呈现 但excel不呈现javascript生成的html css内容 仅呈现没有样式的文本 一个解决方案是将图表渲染为图像 jpeg 但
  • phpexcel xlsx 的千位分隔符

    我在用着 PHPExcel Shared String setThousandsSeparator 为 Excel 文件定义千位分隔符 多亏了它 单元格显示为55 452代替55452 不过 单元格值是整数 55452 因此可以对其进行计算
  • 在 MS Outlook 中,报告所有未收到回复的已发送邮件

    我每天都会发送大量电子邮件 但常常无法跟踪哪些邮件得到了实际回复 有没有办法使用 VBA 脚本查看上周发送的所有消息 并检查他们是否收到回复 具体来说 是一份已发送电子邮件的报告 这些电子邮件尚未从至少一个发送到的地址收到回复 我了解一点
  • 如何模拟“焦点”和“打字”事件

    尝试模拟 onfocus 和打字事件 但它不起作用 Sub Login MyLogin MyPass Dim IEapp As InternetExplorer Dim IeDoc As Object Dim ieTable As Obje
  • xlwings: 删除一个列 | Excel 中的行

    如何删除 Excel 中的一行 wb xw Book Shipment xlsx wb sheets Page1 1 range 1 1 clear clear 用于删除内容 我想删除该行 我很惊讶 clear 函数有效 但 delete
  • 在 Excel 表格中选择多列的代码

    我是 Excel VBA 新手 我需要修改我的代码 以便我能够进一步进行 我想在 Excel 表格中选择多个表格列 这是我的代码 Dim ws As Worksheet Dim tbl As ListObject Set ws Sheets
  • Excel 工作簿 - 从 C# 读取速度非常慢?

    正在尝试读取 Excel 工作簿 发现读取 3560 行 7 列的工作表需要很长时间 大约需要 1 分 17 秒 我所做的就是循环遍历整个工作表并将值存储在列表中 这是正常现象 还是我做错了什么 static void Main strin
  • IE bug:具有不透明背景色的绝对定位元素

    我有一个绝对定位的 DIV 需要捕获 onclick 事件 事实证明 在 IE7 中 DIV 似乎没有诸如单击甚至光标之类的 足迹 例如 div width 200px height 200px position absolute bord
  • 在合并的单元格中选择、插入照片并将其居中

    我是一名研发面包师 正在为我的团队制作食谱模板 模板中有照片 但我需要轻松地允许他们单击一个按钮 打开照片的文件选择器 然后将该照片放在合并的单元格中 我其实不太擅长做这个 Sub InsertPhotoMacro Dim photoNam

随机推荐