Как выбрать значение выпадающего списка на сайте? - PullRequest
0 голосов
/ 19 октября 2018

Я пытаюсь заполнить онлайн-форму с помощью VBA.

Когда я пытаюсь «щелкнуть» значение, оно не показывает, что значение было выбрано на веб-сайте.

Sub GreenShield()

    Dim wb As Workbook
    Dim ws As Worksheet
    Dim IE: Set IE = CreateObject("InternetExplorer.Application")
    Dim XMLReq As New MSXML2.XMLHTTP60

    Set wb = ThisWorkbook
    Set ws = wb.Sheets("Data")

'OPEN INTERNET EXPLORER
    IE.Visible = True
    IE.navigate "https://www.surehealth.ca/#!/summary"
    Wait_IE IE

    DropDown IE
End Sub

Sub DropDown(IE, className, nameAttr, nameValue, DropValue)
    Dim HTMLDoc: Set HTMLDoc = IE.document
    Dim DropList As MSHTML.IHTMLElement
    Dim Drops As MSHTML.IHTMLElementCollection
    Dim Drop As MSHTML.IHTMLElement

    Set DropList = HTMLDoc.getElementsByClassName("ng-scope")(0)
    Set Drops = DropList.getElementsByTagName("li")

    For Each Drop In Drops
        If Drop.getAttribute("ng-repeat") = "n in options.CoverageType" Then
            Debug.Print Drop.tagName; Drop.innerText
            If Drop.innerText = "Myself" Then
                Drop.Click
                Wait_IE IE
            End If
        End If
    Next
End Sub

Sub Wait_IE(ByRef IE)
    Dim Started As Single: Started = Timer
    Dim i: i = 0
    While (i < 10) Or (IE.readyState <> 3 And IE.readyState <> 4)
        Do: DoEvents: Loop Until Timer - Started >= 1
        Do While IE.readyState <> READYSTATE_COMPLETE
        Loop
      i = i + 1
    Wend
 End Sub

Как выбрать значение «Сам» в первом выпадающем меню?

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