Автоматизация IE через Excel VBA теряет фокус с новым URL - PullRequest
0 голосов
/ 21 мая 2019

<DIV id=FAV class=parent noWrap><A onclick='window.event.cancelBubble=true; FolderExpand("FAV")' name=FAV><IMG onclick='window.event.cancelBubble=true; FolderExpand("FAV")' name=FAVTree src="images/Tplus_Top.gif" width=19 align=absMiddle height=20 TopTreeItem="true"><IMG onclick=folderClick() class=icon border=0 name=FAVFolder src="images/foldericon.gif" width=19 align=absMiddle height=20><SPAN onclick=looseFocus()>Favorites</SPAN></A></DIV>

Я пытаюсь написать скрипт vb, чтобы открыть окно> перейти на сайт> войти в систему> открыть путь на этом сайте> найти заказ> и отменить заказ,До сих пор я был в состоянии открыть сайт и войти в систему, но в этот момент URL-адрес меняется, и ошибка, которую я получаю, кажется, что скрипт потерял фокус на окне IE.У меня есть строка «Set LoginForm = doc.forms (0)», чтобы установить фокус на первый URL (я верю).но как только я войду в URL, в конце получится «main.asp».Я могу предоставить код, но я полагаю, что сайт не предназначен для совместного использования с не сотрудниками, поэтому мне придется перевести эту строку.извините за отсутствие информации.любая помощь приветствуется.

Sub Test()
    Const cUsername = "NSH******" 'Enter your user name here
    Const cPassword = "PASS*****" 'Enter your Password here
    Const cHM = "*********"       'Enter your HM here

    Dim ie As InternetExplorer
    Dim doc As HTMLDocumentCompatibleInfo
    Dim LoginForm As HTMLFormElement
    Dim UserNameInputBox As HTMLInputElement
    Dim PasswordInputBox As HTMLInputElement
    Dim SignInButton As HTMLInputButtonElement

    Dim favorites As HTMLDListElement
    Dim pktctrlsheet As HTMLInputButtonElement
    Dim pktctrlbox As HTMLInputElement
    Dim list As HTMLInputButtonElement
    Dim radio As HTMLInputButtonElement
    Dim actions As HTMLInputButtonElement
    Dim HTMLelement As IHTMLElement
    Dim qt As QueryTable

    Set ie = New InternetExplorerMedium

    ie.Visible = True
    ie.navigate "http://gws*********"


    Do
        DoEvents
    Loop Until ie.readyState = READYSTATE_COMPLETE

    Set doc = ie.document
    Set LoginForm = doc.forms(0)
    Set UserNameInputBox = LoginForm.elements("userID")
    UserNameInputBox.Value = cUsername
    Set PasswordInputBox = LoginForm.elements("userPassword")
    PasswordInputBox.Value = cPassword
    Set SignInButton = LoginForm.elements("Login")
    SignInButton.Click

    Do
        DoEvents
    Loop Until ie.readyState = READYSTATE_COMPLETE

    Set favorites = LoginForm.elements("FAV")
    favorites.Click

    Exit Sub
End Sub

Переменная «Избранное» не устанавливается в соответствии с кодом ошибки.на сайте это выпадающее меню, похожее на стрелку outlook inbox.другой код ошибки был чем-то вроде «отмена размещения сайтов»

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