【问题标题】:Can't choose "select" element via VBA DOM controls无法通过 VBA DOM 控件选择“选择”元素
【发布时间】:2013-03-13 16:34:34
【问题描述】:

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

我尝试过使用.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">

提前致谢。

【问题讨论】:

  • 看起来 HTML 代码有“lstNav”(带有小写“L”),而您的 VBA 代码有“1stNav”(带有数字 1)。会不会是这个问题?
  • 该死!太明显了!谢谢。
  • :-) 发生在我们所有人身上!

标签: vba dom excel web-scraping


【解决方案1】:

由于我很少看 cmets 来找到答案,所以我也将它添加到这里:

看起来 HTML 代码有“lstNav”(带有小写“L”),而 VBA 代码有“1stNav”(带有数字 1)。

【讨论】:

    猜你喜欢
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-08
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 2012-01-09
    相关资源
    最近更新 更多