Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 使用Internet Explorer 11在不在VBA中工作的intranet网页上单击复选框_Excel_Vba_Internet Explorer_Automation - Fatal编程技术网

Excel 使用Internet Explorer 11在不在VBA中工作的intranet网页上单击复选框

Excel 使用Internet Explorer 11在不在VBA中工作的intranet网页上单击复选框,excel,vba,internet-explorer,automation,Excel,Vba,Internet Explorer,Automation,我在编写VBA时遇到了一个特殊的问题。使用VBA,我登录到一个内部网门户,这是一个文件管理系统,并打开一系列动态网页一个接一个。使用VBA,我试图选中复选框元素。选中此元素后,将自动选中下表中显示的所有子元素。在此之后,我需要开始下载所有选定的文件。但是,我无法获取checkbox元素“checked” 这是网页上显示的HTML。我不能共享链接,因为它是内部网和机密 以下是我的VBA代码: Set inpute = objIE.Document.queryselector("div[

我在编写VBA时遇到了一个特殊的问题。使用VBA,我登录到一个内部网门户,这是一个文件管理系统,并打开一系列动态网页一个接一个。使用VBA,我试图选中复选框元素。选中此元素后,将自动选中下表中显示的所有子元素。在此之后,我需要开始下载所有选定的文件。但是,我无法获取checkbox元素“checked”

这是网页上显示的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”,但单击对复选框没有影响。 我尝试过使用getElementbyClassName方法,并在之后使用Click,但没有效果


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

Zwenn的此解决方案非常有效:


首先,复选框没有单击事件。关于主题:因为其他复选框的整个列表都将通过标记有问题的复选框来标记,所以我很确定有问题的复选框在手动标记时会触发类似change的HTML事件。您必须检查它是哪个事件,并用VBA触发它。您可以使用FireFox或Chrome查找事件,但不能使用IE。请查看如何执行此操作以及如何处理事件:


–Zwenn 14小时前

首先,复选框没有
单击事件。关于主题:因为其他复选框的整个列表都将通过标记有问题的复选框来标记,所以我很确定有问题的复选框在手动标记时会触发一个HTML事件,如
change
。您必须检查它是哪个事件,并用VBA触发它。您可以使用FireFox或Chrome查找事件,但不能使用IE。请看下面的操作方法以及如何处理事件:谢谢Zwenn。我会试试那个链接上的东西,让你知道。Zwenn你的链接是一个救命恩人,当它涉及到复选框的事情。它工作得很好。非常感谢!我还学到了一些新东西,dispatchevent的使用。然而,在下一步中,我现在面临着另一个问题。我无法为同一页上的下拉列表触发任何事件。不知怎的,我试着查看Chrome中的事件,似乎有一个span元素上的点击事件和一个不可见的输入元素。但是单击dispatchevent对元素不起作用。关于为什么它可能不起作用,或者我应该发布一个单独的问题/编辑这个问题,有什么想法吗?从你上次的评论来看,似乎你已经解决了这个问题。我建议你把它作为一个答案,并把它标记为一个可接受的答案。它可以在将来帮助其他社区成员解决类似的问题。谢谢你的理解。