如何在 Excel 中使用 VBA 单击图标

How to Click an Icon using VBA in Excel

我对 VBA 并不陌生,但我对编码与网络交互的任何东西都不陌生。我可以打开网页,然后有几个图标。我需要有关单击特定图标的帮助。 这是当我右键单击所需图标并单击 "Inspect element" 时出现的 HTML:

<div title="" class="myapps-myapp resource" position="N" index="22">
    <div class="myapps-icon-background"></div>
    <a class="myapps-icon" href="#">
    <img class="iconImage" alt="SomeName"
        src="Resources/Icon/aklhdjQ2QWJGVVQxcHpUcEJ5RG5FcEZwcytzPQ--
?size=48"
        iconid="akltdjStWJGVVRxcHpUcEJ7QG3FcEZwtytzMT">
    </a>
    <div class="myapps-status"></div>
    <div class="myapps-name">SomeName</div>
    </div>

这是我目前的 VBA 代码:

Sub test()
Dim oHTML_Element As IHTMLElement
Dim oBrowser As Internet Explorer
Dim objIE As Variant
Set objIE = Create Object("InternetExplorer.Application")
objIE.navigate "http://The webpage goes here" 'This open the site       
While objIE.readyState <> READYSTATE_COMPLETE And objIE.readyState & _
    <> READYSTATE_LOADED
    DoEvents
Wend
For Each oHTML_Element In objIE.document.getElementsByName & _
("SomeName")
    oHTML_Element.Click   'This does not work!
Next
End Sub

如有任何帮助,我们将不胜感激。谢谢!

它是您要匹配的 alt 属性的值。没有循环。

objIe.document.querySelector("[alt='RevenueCycle P0657 YAVA_AZ']").click

尽管它实际上可能是您要点击的 a 标签

objIe.document.querySelector("[index='22'] .myapps-icon").click

了解:

  1. css selectors
  2. querySelector