需要帮助使用 VBA 在 IE 的组合框中选择多个项目



我在自动化工作的一部分中遇到了问题,那就是使用 VBA 和 IE 在网页上的组合框中选择所有选项。

此代码在组合框中选择一个项目

Set frm = HTMLDoc.getElementsByName("UFG.USER_TYPES")(0)
frm.Value = "AUT"

但是,当我尝试选择多个项目时,它只会选择最后一个项目,而不是全部。

这是网页上的代码


<p  id="DispFormCollapsible.Rc10"class="formrow" >
<span  id="DispFormCollapsible.Rc10.C1"  class="querytextleft">
<label for="UFG.USER_TYPES" id="LabelForContro123"class = "simpletext" >
Accessible Types:<span class="redstar">*</span></label></span>
<span  id="DispFormCollapsible.Rc10.C2"  class="querytextright">
<span class="labelColumn_combo">
<span class="labelColumn_combi_brdr"> 
<select  name= "UFG.USER_TYPES" multiple= "true" class = "dropdownexpandalbe"
id="UFG.USER_TYPES" title = "Accessible Financial Transaction Types"> 
<option value="AUT"   title="ACTIVE USER TYPE1" >TYPE1</option> 
<option value="SET"   title="Selective User Type" >TYPE2</option> 
<option value="TST"   title="Test User Type" >TEST3</option>
</select></span></span>
<input type ="hidden" name= "UFG.USER_TYPES" value="NULL" >
</span></p>

这是我的VBA行来选择一个项目

Set frm = HTMLDoc.getElementsByName("UFG.USER_TYPES")(0)
frm.Value = "AUT"

我需要它做的是选择组合框中的所有"选项值"。 我认为它可能需要是一个数组,或者其他方式。 我尝试过搜索,但我一无所获。 任何帮助表示赞赏。感谢

已尝试以下操作,但出现错误91块未设置。 我还尝试在孩子中使用值"AUT",这样做时我没有收到错误,但它没有选择任何东西。

With HTMLDoc.getElementsByName("Select")(0)
.Children(1).Selected = True
.Children(2).Selected = True
.Children(3).Selected = True
End With

还尝试了以下方法,这不会给出错误,而只会选择列表中的第一个选项。

With HTMLDoc.getElementsByName("UFG.USER_TYPES")(0)
.Children(AUT).Selected = True
.Children(SET).Selected = True
.Children(TST).Selected = True
End With

这很奇怪,当我使用此代码时,它会选择列表中的前两个,而不是第三个。

With HTMLDoc.getElementsByName("UFG.USER_TYPES")(0)
.Children(all).Selected = True
End With
With HTMLDoc.getElementsByName("UFG.USER_TYPES")(0)
.Children(0).Selected = True
.Children(1).Selected = True
.Children(2).Selected = True
End With

上面的代码修复了它...嗖!

相关内容

  • 没有找到相关文章

最新更新