Заставьте Web Scraper манипулировать всплывающей страницей, которая открывается с целевой страницы

Мой код открывает страницу и начинает ее завершать. Затем он нажимает кнопку, в результате чего появляется всплывающее окно, которое необходимо заполнить. Однако я не уверен, как заставить мой код получить доступ к этому всплывающему экрану. Любая помощь будет оценена!

Вот мой код:

Sub Van()

Dim IE As Object

Set IE = CreateObject("InternetExplorer.Application")

IE.navigate ("website")

IE.Visible = True

Do
DoEvents
Loop Until IE.readystate = 4

Set d = IE.document

'Code clicks on buttons and dropdowns

Application.Wait (Now + TimeValue("00:00:03"))

d.GetElementbyid("caravanMake").Value = "JAY"


End Sub

1 ответ

Решение

Это помогло мне установить значение первого раскрывающегося списка во всплывающем окне:

'...
Application.Wait (Now + TimeValue("00:00:03"))

Set IE2 = GetIE("https://secure.apia.com.au/NASApp/apia/CRQuoteServlet?" & _
                 "pageAction=openModelSelectionWindow&currentSequenceNumber=")

IE2.document.getElementsByTagName("select")(0).Value = "JAY"
'etc

Функция для поиска открытого окна с заданным URL:

'Find an IE window with a matching URL
'Assumes no frames.
Function GetIE(sAddress As String) As Object

Dim objShell As Object, objShellWindows As Object, o As Object
Dim retVal As Object, sURL As String


    Set retVal = Nothing
    Set objShell = CreateObject("Shell.Application")
    Set objShellWindows = objShell.Windows

 'see if IE is already open
    For Each o In objShellWindows
        sURL = ""
        On Error Resume Next
        sURL = o.LocationURL
        On Error GoTo 0
        If sURL <> "" Then
            'Debug.Print sURL
            If sURL = sAddress Then
              Set retVal = o
              Exit For
            End If
        End If
    Next o

Set GetIE = retVal
End Function
Другие вопросы по тегам