需要参数的VBA IE点击按钮?

时间:2016-03-02 06:01:17

标签: excel vba excel-vba internet-explorer radio-button

我正在使用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后的代码。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

回答here

点击按钮运行了一个功能。我没有点击按钮,而是只运行这样的功能:

Dim CurrentWindow As HTMLWindowProxy    
Set CurrentWindow = IE.Document.parentWindow
Call CurrentWindow.execScript("xajax_DoCalReservation('100', '2016-03-02')")