使用Excel宏完成IE网页登录后如何点击“I agree”按钮
你可以在原有代码的末尾、登录点击逻辑之后,追加页面加载等待 + 匹配点击「I agree」按钮的代码即可,具体实现如下:
实现逻辑说明
- 点击登录按钮后必须等待页面跳转加载完成,否则会找不到新页面上的I agree按钮
- 匹配逻辑和你之前查找登录按钮的逻辑一致,通过按钮的
value属性定位目标元素即可
追加代码段
把以下代码放在原有代码的End Sub之前即可:
' 等待登录后页面跳转加载完成 Do While IE.Busy Or IE.ReadyState <> 4 Application.Wait DateAdd("s", 1, Now) Loop ' 重新获取跳转后页面的文档对象 Set idoc = IE.document ' 查找所有input元素匹配I agree按钮 Set eles = idoc.getElementsByTagName("input") For Each ele In eles If ele.Value = "I agree" Then ele.Click Exit For ' 匹配到目标按钮后直接退出循环,无需多余遍历 End If Next ele
特殊情况适配
如果目标按钮是button标签而非input标签,把代码中的getElementsByTagName("input")修改为getElementsByTagName("button")即可。如果按钮有固定的id属性,也可以直接用idoc.getElementById("按钮的id值").Click实现点击,执行效率更高。
内容的提问来源于stack exchange,提问作者aims97
相关产品推荐
相关产品推荐

