Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.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
Html Microsoft Excel IE自动化-从下拉列表中选择项目_Html_Vba_Internet Explorer_Automation - Fatal编程技术网

Html Microsoft Excel IE自动化-从下拉列表中选择项目

Html Microsoft Excel IE自动化-从下拉列表中选择项目,html,vba,internet-explorer,automation,Html,Vba,Internet Explorer,Automation,我试图创建一个IE自动化,从下拉列表中选择正确的项目。所有项目都设置为在站点启动时自动检查。我很难得到任何我不需要取消选中的框。下面是html代码 <div id="ReportViewerControl_ctl04_ctl07_divDropDown" onclick="event.cancelBubble=true;" onactivate="event.cancelBubble=true;" style="display:inline-block;border-color:DarkG

我试图创建一个IE自动化,从下拉列表中选择正确的项目。所有项目都设置为在站点启动时自动检查。我很难得到任何我不需要取消选中的框。下面是html代码

<div id="ReportViewerControl_ctl04_ctl07_divDropDown" onclick="event.cancelBubble=true;" onactivate="event.cancelBubble=true;" style="display:inline-block;border-color:DarkGray;border-width:1px;border-style:Solid;overflow:auto;background-color:window;display:none;position:absolute;z-index:11;">
            <table cellpadding="0" cellspacing="0" style="background-color:window;">
                <tr>
                    <td nowrap="nowrap"><span><input id="ReportViewerControl_ctl04_ctl07_divDropDown_ctl00" type="checkbox" name="ReportViewerControl$ctl04$ctl07$divDropDown$ctl00" checked="checked" onclick="$get('ReportViewerControl_ctl04_ctl07').control.OnSelectAllClick(this);" /><label for="ReportViewerControl_ctl04_ctl07_divDropDown_ctl00">(Select All)</label></span></td>
                </tr><tr>
                    <td nowrap="nowrap"><span><input id="ReportViewerControl_ctl04_ctl07_divDropDown_ctl02" type="checkbox" name="ReportViewerControl$ctl04$ctl07$divDropDown$ctl02" checked="checked" onclick="$get('ReportViewerControl_ctl04_ctl07').control.OnValidValueClick(this, 'ReportViewerControl_ctl04_ctl07_divDropDown_ctl00');" /><label for="ReportViewerControl_ctl04_ctl07_divDropDown_ctl02">Shift&nbsp;1</label></span></td>
                </tr><tr>
                    <td nowrap="nowrap"><span><input id="ReportViewerControl_ctl04_ctl07_divDropDown_ctl03" type="checkbox" name="ReportViewerControl$ctl04$ctl07$divDropDown$ctl03" checked="checked" onclick="$get('ReportViewerControl_ctl04_ctl07').control.OnValidValueClick(this, 'ReportViewerControl_ctl04_ctl07_divDropDown_ctl00');" /><label for="ReportViewerControl_ctl04_ctl07_divDropDown_ctl03">Shift&nbsp;2</label></span></td>
                </tr><tr>
                    <td nowrap="nowrap"><span><input id="ReportViewerControl_ctl04_ctl07_divDropDown_ctl04" type="checkbox" name="ReportViewerControl$ctl04$ctl07$divDropDown$ctl04" checked="checked" onclick="$get('ReportViewerControl_ctl04_ctl07').control.OnValidValueClick(this, 'ReportViewerControl_ctl04_ctl07_divDropDown_ctl00');" /><label for="ReportViewerControl_ctl04_ctl07_divDropDown_ctl04">Shift&nbsp;3</label></span></td>
                </tr>
            </table><span><input type="hidden" name="ReportViewerControl$ctl04$ctl07$divDropDown$ctl01$HiddenIndices" id="ReportViewerControl_ctl04_ctl07_divDropDown_ctl01_HiddenIndices" value="0,1,2" /></span>
        </div><iframe id="ReportViewerControl_ctl04_ctl11_ctl01" onclick="event.cancelBubble=true;" onactivate="event.cancelBubble=true;"

此元素的框保持不变。任何关于如何改变这一点的建议都将不胜感激。提前感谢。

您应该将选中的值设置为False,以使其处于未选中状态

示例代码如下所示:

Sub LOADIE()
    Set ieA = CreateObject("InternetExplorer.Application")
    ieA.Visible = True
    ieA.navigate "http://www.example.com"
    Do Until ieA.readyState = 4
       DoEvents
    Loop

    ieA.document.getElementById("ReportViewerControl_ctl04_ctl07_divDropDown_ctl02").Checked = False
End Sub
结果如下:

Sub LOADIE()
    Set ieA = CreateObject("InternetExplorer.Application")
    ieA.Visible = True
    ieA.navigate "http://www.example.com"
    Do Until ieA.readyState = 4
       DoEvents
    Loop

    ieA.document.getElementById("ReportViewerControl_ctl04_ctl07_divDropDown_ctl02").Checked = False
End Sub

感谢您的快速响应,但是当我进行此更改时,框仍然显示为标记。是否因为控制其他框的“全选”选项?我也不能操作那个框,因为它不是一个选中的变量。它可能是。您可以尝试先单击全选选项,就像comment.ieobject.document.querySelectorReportViewerControl\u ctl04\u ctl07\u div下拉列表中建议的@QHarr一样。是否先单击?