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

问题描述 投票:0回答:2

这是我第一次尝试通过 VBA 浏览 IE 浏览器。 我在尝试着: - 转到此网页https://hb2.bankleumi.co.il/e/Login.html - 填写用户名 - 填写密码 - 单击“登录”按钮 现在我收到错误“对象‘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

我应该更改代码中的哪些内容?我错过了什么?

谢谢!

javascript html vba dom
2个回答
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

0
投票

当我运行此代码时,我在这一行收到此错误“运行时错误 424:需要对象”。我忘记定义什么对象?

ie.Document.getElementById("Email").Value = "TestEmail"

© www.soinside.com 2019 - 2024. All rights reserved.