首页 > 解决方案 > 单击 Intranet 网页上的复选框在使用 Internet Explorer 11 的 VBA 中不起作用

问题描述

我被困在编码 VBA 的特定点上。使用 VBA,我登录到作为文件管理系统的 Intranet 门户,并一个接一个地打开一系列动态网页。使用 VBA 我试图检查一个复选框元素。选中此元素后,将自动检查下表中出现的所有子元素。在此之后,我需要开始下载所有选定的文件。但是,我无法“选中”复选框元素。

这是网页上显示的 HTML。我无法共享该链接,因为它是 Intranet 和机密。

链接到 HTML,因为我还不能发布图片

这是我的 VBA 代码:

Set inpute = objIE.Document.queryselector("div[id=gridx_Grid_2] div div div table tbody tr td span[aria-checked=false]")
inpute.setAttribute("aria-checked") = True
inpute.Click

运行上述代码时,HTML 中的“aria-selected”属性更改为“true”,但 Click 对复选框没有影响。我尝试使用 getElementbyClassName 方法并在此之后使用 Click 无济于事。

请帮我解决这个问题。如果您需要任何其他信息,请告诉我。

标签: excelvbainternet-explorerautomation

解决方案


Zwenn 的这个解决方案效果很好:

首先,复选框没有点击事件。主题:因为其他复选框的整个列表将通过标记有问题的复选框来标记,我很确定当您手动标记时,有问题的复选框会触发 HTML 事件,例如更改。您必须检查它是哪个事件并使用 VBA 触发它。您可以使用 FireFox 或 Chrome 查找事件,但不能使用 IE。看看这里如何做到这一点以及如何处理事件:

通过 Excel 自动化 IE 以填写下拉列表并继续

– Zwenn 14 小时前


推荐阅读