Я пытаюсь заполнить онлайн-форму с помощью 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
Как выбрать значение «Сам» в первом выпадающем меню?