【发布时间】:2016-03-02 06:01:17
【问题描述】:
我正在使用 Excel 和 VBA 编程。
我找到了一个我想点击的按钮。但是,这个按钮似乎需要一个参数。
使用 Chrome 中的控制台,我输入了以下内容:
document.getElementById("button1").click
该行已解决function click() { [native code] }
所以我尝试了这个:
document.getElementById("button1").click ('100', '2016-03-02')
它奏效了。那么,我如何从 VBA 运行相同的东西呢?
我尝试了以下方法:
Sub ClickTheButton()
Dim IE As SHDocVw.InternetExplorer
Dim Doc As MSHTML.HTMLDocument
Set IE = New SHDocVw.InternetExplorer
With IE
.Visible = True
.Navigate "(webpage here)"
Do Until Not .Busy And .ReadyState = 4
DoEvents
Loop
Set Doc = .Document
Doc.GetElementByID("button1").Click ' nothing happens when running this
Doc.GetElementByID("button1").Click "('100', '2016-03-02')" ' not working (can't even attempt to run this)
Doc.GetElementByID("button1").Click ("'100', '2016-03-02'") ' not working (can't even attempt to run this)
End With
End Sub
我无法运行该程序,因为.Click 之后的代码返回了Wrong number of arguments or invalid property assignments。
有什么想法吗?
【问题讨论】:
-
试试
Doc.getElementById("button1").click "100", "2016-03-02"工作时您使用的是什么语言?发布 URL 或相关 HTML 也很有帮助。 -
我无法提供真实的 URL,因为它需要我登录到一个站点(它用于单击一个预订会话的按钮。但是,我只是在 Chrome 中使用了控制台。另外,您的建议在 VBA 中不起作用,它仍然认为不应在
.Click之后放置任何内容(关于无效属性分配的错误)。
标签: vba excel internet-explorer radio-button