首页 > 解决方案 > VBA登录无法点击按钮

问题描述

一切正常,直到我尝试单击按钮。该按钮没有名称,所以我尝试按类获取它。有什么建议么?

按钮:

<input type="button" value="Sign On" class="ButtonSm" onclick="submitForm();">   

我的代码:

Dim IE

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = 1
IE.navigate "www.xxx.com"


Do While (IE.Busy)
    Application.Wait DateAdd("s", 1, Now)

Loop

With IE.Document
        .getElementByID("USER").Value = UserName
        .getElementByID("PASSWORD").Value = Password
        .getElementByClassName("ButtonSm").Click
End With


End Sub

标签: excelvba

解决方案


CSS 选择器:

尝试使用 CSS 选择器来定位元素。选择器input[value='Sign On'针对页面上找到的第一个元素,该元素带有input标签并具有value值为 的属性'Sign On'


使用 VBA 应用选择器:

通过 的querySelector方法应用document

IE.document.querySelector("input[value='Sign On']").Click

你也可以试试

IE.document.querySelector("input[value='Sign On']").FireEvent "onclick"

其他观察:

没有足够的 HTML 或 URL 来提供进一步的建议。您可以直接使用以下方式提交表单:

IE.document.forms(formIndexGoesHere).Submit

推荐阅读