使用VBA在网页中填写用户名和密码

时间:2014-06-04 13:02:10

标签: javascript html vba dom

这是我第一次尝试通过VBA导航IE浏览器。 我在尝试着:    - 转到此网页https://hb2.bankleumi.co.il/e/Login.html    - 填写用户名    - 填写密码    - 点击"登录"按键 现在我收到了错误" Method' Document'对象' IWebBrowser2'失败"

我试图检查网页的html代码中的元素并找到了它们的ID,但我想我在调用方法或接近对象时犯了一些错误。

我的代码是:

Option Explicit
Sub dataFromLeumi()
    Dim myPassword As String
    myPassword = "somepassword"
    Dim myUserName As String
    myUserName = "someusername"



    Dim loginPath As String
    loginPath = "https://hb2.bankleumi.co.il/e/Login.html"
    Dim IE As Object
    Set IE = CreateObject("InternetExplorer.application")
    IE.Visible = True
    IE.navigate loginPath

    Dim userName As Object
    Set userName = IE.document.getattribute("uid")
    userName.Item(0).Value = myUserName

    Dim password As Object
    password = IE.document.getelementbyid("password")
    password.Item(0).Value = myPassword


    IE.document.getelementbyid("enter").Click
End Sub

我的代码应该更改什么?我错过了什么?

谢谢!

1 个答案:

答案 0 :(得分:10)

试试这个

Sub test()
' open IE, navigate to the desired page and loop until fully loaded
    Set ie = CreateObject("InternetExplorer.Application")
    my_url = "https://hb2.bankleumi.co.il/e/Login.html"

    With ie
        .Visible = True
        .Navigate my_url
        .Top = 50
        .Left = 530
        .Height = 400
        .Width = 400

    Do Until Not ie.Busy And ie.readyState = 4
        DoEvents
    Loop

    End With

' Input the userid and password
    ie.Document.getElementById("uid").Value = "testID"
    ie.Document.getElementById("password").Value = "testPW"

' Click the "Search" button
    ie.Document.getElementById("enter").Click

    Do Until Not ie.Busy And ie.readyState = 4
        DoEvents
    Loop
End Sub