Как запустить приложение Internet Explorer через WebBrowser? - PullRequest
0 голосов
/ 03 июня 2019

Я создал этот код, который имитирует мое реальное приложение.И я пытаюсь запустить процедуру через WebBrowser1.Если бы в моем реальном приложении можно было использовать .document.getElementById, это бы сработало, но вам нужно .getElementsByClassName или TagName.Как я могу сделать это с данными ниже?Приложение кода выполняется CommandButton, а веб-браузер будет внутри пользовательской формы.

Private Sub CommandButton1_Click()


Dim IE As InternetExplorer

Dim iELE As Object

Dim xUser As String

Dim xPswd As String



Set IE = New InternetExplorer

IE.Visible = True

IE.Navigate ("https://twitter.com/login?lang=pt")

xUser = "your username"

xPswd = "your password"

    Application.Wait (Now + TimeValue("0:00:10"))


        Do While IE.Busy = True Or IE.ReadyState <> 4: DoEvents: Loop


            For Each iELE In IE.Document.getElementsByClassName("js-username-field email-input js-initial-focus")

                    If iELE.Value = "" Then
                            iELE.Value = xUser
                    End If
                Exit For
            Next
            For Each iELE In IE.Document.getElementsByClassName("js-password-field")

                    If iELE.Value = "" Then
                            iELE.Value = xPswd
                    End If
                Exit For
            Next
            Application.Wait (Now + TimeValue("0:00:05"))
            For Each iELE In IE.Document.getElementsByClassName("submit EdgeButton EdgeButton--primary EdgeButtom--medium")

                    If iELE.Value = "" Then
                            iELE.Click
                    End If
                Exit For
            Next


End Sub

1 Ответ

0 голосов
/ 03 июня 2019

Попробуйте это

Sub Login(MyLogin, MyPass, strUrl)
    Dim IeApp As InternetExplorer
    Dim IeDoc As Object
    Dim ieTable As Object
    Set IeApp = New InternetExplorer
        IeApp.Visible = False
            IeApp.Navigate strUrl
            Do While IeApp.Busy: DoEvents: Loop
            Do Until IeApp.readyState = READYSTATE_COMPLETE: DoEvents: Loop
            Set IeDoc = IeApp.Document
                With IeDoc
                    .getElementsByClassName("js-username-field")(0).value = MyLogin
                    .getElementsByClassName("js-password-field")(0).value = MyPass
                End With
                IeDoc.getElementsByClassName("submit")(0).Click
                    Do While IeApp.Busy: DoEvents: Loop
                    Do Until IeApp.readyState = READYSTATE_COMPLETE: DoEvents: Loop

End Sub

https://www.pk -anexcelexpert.com / VBA-веб-браузер-в-пользователя-формы /

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...