Я пытаюсь заполнить поле на веб-странице, используя vba. Веб-страница использует JSON. Я нашел ссылку на поле и мог заполнить ее с помощью SendKeys, но, очевидно, это не работает, когда компьютер заблокирован. Строка поля в коде выглядит следующим образом:
<input name="Some_Input_Field" id="Field_ID" type="test" value="50"></input>
Честно говоря, я понятия не имею о json, но должен быть какой-то способ изменить значение с 50 на то, что я хочу, верно? Я попробовал следующее:
Dim URL as String
Dim IE as InternetExplorer
Dim objInput as object
URL = "https://SomeUrl.com
Set IE = New InternetExplorerMedium
With IE
.visible = True
.navigate URL
Do Until IE.readystate = 4
Loop
End With
Set objInput = IE.document.getElementsByName("Some_Input_Field")
objInput(0).Value = 55
При этом открывается страница, и она заполняет соответствующее поле с помощью 55, но изменение действительно не проходит. Это немного сложно объяснить, но когда я делаю процесс вручную, я должен покинуть поле (например, нажав TAB), прежде чем новое значение будет принято. Однако когда я запускаю приведенный выше код и затем покидаю поле, ничего не меняется. Перезагрузка страницы подтверждает это, показывая старое значение. Так что, я полагаю, я на самом деле не манипулирую кодом json, а взаимодействую только с его объектом. Есть идеи, как мне это обойти?