Excel VBA формы отправки и анализа данных из результата
Вот мой код, к сожалению, для решения проблем компании, я не могу опубликовать реальный URL, он работает, но не так, как я хочу, проверьте мой вопрос ниже:
Dim doc As HTMLDocument
Dim IE As InternetExplorer
Dim TDelements As IHTMLElementCollection
Dim TDelement As HTMLTableCell
Dim r As Long
Sub ficfinder()
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.navigate URL:="...INPUT"<---this is my search form, but i have to redact due to co policy
Do 'Until .readyState = 4
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
'pick field to fill out
Set mytextfield1 = .document.all.Item("WESTAC")
'set value to put in
mytextfield1.Value = "5416869160"
'click the submit button
IE.document.all.Item("Submit").Click
Do 'Until .readyState = 4
DoEvents
Loop Until IE.readyState = READYSTATE_COMPLETE
End With
'I think i'm missing something here
Set doc = IE.document
Dim sdd As String
Set TDelements = doc.getElementsByTagName("td")
r = 0
For Each TDelement In TDelements
If TDelement.Align = "right" Then
Sheet2.Range("A1").Offset(r, 0).Value = TDelement.innerText
r = r + 1
End If
Next
End Sub
так что это работает и помещает данные в мою электронную таблицу, но данные, которые она извлекает, взяты из формы поиска, а не со страницы, которая появляется после отправки. как сделать IE.document новой страницей?
Любая помощь приветствуется, спасибо!
1 ответ
Решение
Я добавил
Do While IE.Busy: DoEvents: Loop
только после отправки и работает отлично. Спасибо Тиму Уильямсу за помощь!