2013-03-13 76 views
0

我试图通过Excel VBA自动处理表单。在我目前正在使用的网站上,我可以点击按钮并填写文本字段,而不会有任何问题。但是,有一个我不能使用的“选择”框:1stNav。通常情况下,我会执行类似Document.getElementById("1stNav").Options(1).Selected = True的操作,但我无法获取对象。无法通过VBA DOM控件选择“select”元素

我试过使用.getElementById("1stNav"), .getElementsByName("1stNav"), .all.Item("1stNav").似乎没有任何工作。我可以使用这些函数来选择其他DOM对象。是什么赋予了?任何人都可以将我指向正确的方向吗?

这里的源代码(屏幕截图,以便更容易阅读):

​​

完整标签是:提前<select name="lstNav" class="ListNav" id="lstNav" style="background-color: whitesmoke;" onmouseover="this.className='ListNavExpand';" onmouseout="this.className='ListNav';" onchange="javascript:setTimeout('__doPostBack(\'lstNav\',\'\')', 0)" size="4">

感谢。

+1

它看起来像HTML代码具有“lstNav”(小写“L”)和您的VBA代码具有“1stNav”(数字1)。这可能是问题吗? – 2013-03-13 16:38:11

+0

该死!非常明显!谢谢。 – 2013-03-13 16:44:51

+0

:-)适合我们所有人! – 2013-03-13 16:47:20

回答

2

正如我很少看评论找到答案,我将它添加到这里还有:

它看起来像HTML代码中有“lstNav”(用小写字母“L”)和VBA代码有“1stNav”(数字1)。