【问题标题】:Use VBA to click on a button in IE使用VBA点击IE中的按钮
【发布时间】:2017-12-13 19:50:57
【问题描述】:

我目前正在寻找一种方法来单击网页上的按钮以自动导出。

我已经成功登录到网页并单击登录按钮重定向页面,但是我无法单击我正在寻找的下一个按钮。

我的代码:

For Each ele In IE.document.getElementsByTagName("ul")
 If ele.document.getElementsByTagName("a").getAttribute("aria-labelledby") = "Exporter vers CSV" Then ele.Click
Next

网站来源:

<ul class="dropdown-menu pull-left">
   <!-- ngRepeat: item in secondaryItems track by item.dataAid --><li ng-repeat="item in secondaryItems track by item.dataAid" class="">
     <a role="button" ng-show="item.visible" aria-labelledby="Exporter vers CSV" data-aid="tool-bar-inner-dd-btn-export" type="submit" ng-disabled="!item.enabled" ng-class="{plToolbarItemDisabled:!item.enabled, disabled:!item.enabled}" class="grid-export-item-btn" ng-click="item.callback(item, $event)" pl-toolbar-button-in-dropdown="" item="item">

【问题讨论】:

  • 我曾经遇到过类似的问题。最后,我只是检查了我是否通过返回 url 登录到该站点。如果未登录,我会提示一条错误消息,告诉用户登录并重试。

标签: vba internet-explorer buttonclick


【解决方案1】:

我无法在不知道您的 URL 的情况下对其进行测试,但这可能可行:

For Each ele In IE.document.getElementsByTagName("ul")
    For Each ele2 In ele.getElementsByTagName("a")
        If InStr(ele2.InnerHtml, "aria-labelledby=""Exporter vers CSV""") Then ele2.Click
    Next ele2
Next ele

【讨论】:

  • 嗨,我不能给你网址,因为它是我公司的内部网址,谢谢!
【解决方案2】:

试一试。当您使用instr() 函数时,只需以下方法即可到达。

For Each ele In IE.document.getElementsByTagName("a")
    If InStr(ele.getAttribute("aria-labelledby"), "Exporter vers CSV") > 0 Then ele.Click: Exit For
Next ele

【讨论】:

    猜你喜欢
    • 2015-01-29
    • 1970-01-01
    • 2016-05-19
    • 1970-01-01
    • 1970-01-01
    • 2019-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多