Я пробовал 10-20 вариантов кода ниже:
If dropDown <> "" Then
Dim post As Object
Application.Wait Now + #12:00:04 AM#
Set post = ie.document.getElementById("swapUser")
Application.Wait Now + #12:00:01 AM#
Set dropOptions = ie.document.getElementsbytagname("select")
Set elem = ie.document.getElementsbytagname("option")
For Each elem In dropOptions
On Error Resume Next
With post
.Click
.Focus
.Expand
Do While elem.Value <> dropDown 'dropDown is the desired value'
Debug.Print elem.Value
Application.SendKeys "{DOWN}"
Loop
End With
Next elem
Application.Wait Now + #12:00:02 AM#
Application.SendKeys "{ENTER}"
End If
Чтобы взаимодействовать с этой раскрывающейся частью веб-страницы:
<select id="swapUser" name="swapUser" style="width:250px;margin-left:20px;margin-top: 10px;">
<option value="831882,Clinic">BRiO Utah HH</option>
<option value="897165,Clinic">24 Hour Home Care</option>
<option value="776915,Clinic">Brio Idaho Home Health</option>
<option value="776913,Clinic">Home Health</option>
</select>
Он просто не хочет стрелять через варианты. Я могу сделать это вручную.
ОБНОВЛЕНИЕ
post.Focus
For Each Children In post
If Children.Value = dropDown Then
Children.Selected = True
End If
Next
Это, кажется, правильно выделить и изменить на правильный экземпляр. Я не могу заставить .click, .activate, .fireevent "onchange" или любую другую "активацию" работать с этой точки, хотя: (
также нашел это.
back end сайта kinnser