如何选择没有id的下拉列表

时间:2014-11-30 17:26:09

标签: vba internet-explorer excel-vba internet-explorer-8 excel

我在过去几天一直在研究这个问题,但还没有找到解决方案。任何帮助将不胜感激。

我正在使用VBA在Excel电子表格上放置一个按钮,该电子表格将打开Internet Explorer窗口,将人员记录到特定站点,在站点上搜索特定的“案例”(webform),填写值用户在工作表上指定的方式,然后提交表单。除了下拉列表的表单字段外,一切正常。当我运行它时,它会在这些字段中填写我想要的值但看起来它实际上并没有从列表中选择它们,只是覆盖了那里显示的内容,因为当它点击提交时会弹出一个错误窗口,说明要填写那些掉落在田野里。

从我的研究中我已经看到了各种解决方案,用于搜索下拉列表并在找到我想要的文本后将其设置为所选索引,但我的问题是我没有运气选择下拉列表列表。如果您查看下面的屏幕截图,它会显示Internet Explorer的开发工具中的一个字段: IE Dev tools enter image description here 突出显示的部分是我用来粘贴在我的文本中的id号(我现在正在做什么不能正常工作)但是它下面的行与类ns-dropdown似乎可能是我真正想要访问的内容,但该行没有id。

这是我的代码的相关部分:

Dim IE As Object
Dim IEForm As HTMLDocument

Set IEForm = IE.Document

With IEForm
    .getElementById("custevent_crc_code_fs").innerText = Sheet1.Cells(9, 3) 'CRC Code
    .getElementById("inpt_status4").innerText = Sheet1.Cells(8, 3) 'Status
    .getElementById("inpt_custevent95").innerText = Sheet1.Cells(11, 3) 'Department
    .getElementById("inpt_custevent426").innerText = Sheet1.Cells(10, 3) 'Case Origin
    .getElementById("inpt_custevent447").innerText = Sheet1.Cells(6, 3) 'Created By
    .getElementById("inpt_custevent1188").innerText = Sheet1.Cells(7, 3) 'Contact Reason
    .getElementById("btn_multibutton_submitter").Click
End With

如果您需要更多信息,请与我们联系。我一直在和这个问题摔跤,并且我试图不要给你带来太多关于我尝试过的事情的信息。

0 个答案:

没有答案