Как зациклить значения ячеек из Excel в текстовое поле веб-сайтов с VBA? - PullRequest
0 голосов
/ 13 июня 2018

У меня есть список в Excel, в котором содержится примерно 1800 значений (цифры, буквы и т. Д.). Я должен ввести каждое из них по отдельности на веб-сайт с помощью vba.Есть ли способ зациклить эти значения, начиная с ячейки A1 , затем A2 ... A1800 на веб-сайт по одному?

Set svalue1 = ie.document.getElementById("Txt Box ID")
 svalue1.Value = "9B"

ie.document.getElementsByName("Button Name").Item.Click

Выше я ввожу одно значение в это текстовое поле, затем нажимаю «Отправить», чтобы получить нужные мне данные.Затем я должен вернуться на домашнюю страницу после того, как данные будут очищены для значения A1 , скопировать ячейка A2 и переписать текстовое поле для ввода A2 затем очистите данные для этого значения тоже.Этот процесс необходимо повторить 1800 раз. Вся помощь приветствуется!

1 Ответ

0 голосов
/ 13 июня 2018

Как примерно так, как показано ниже, это откроет ваш URL в Internet Explorer, затем перейдет от А2 к вашей последней ячейке в столбце А с данными и введите это значение в «Txt Box ID», затем он нажмет наНажмите кнопку, затем вы можете получить требуемые значения, прежде чем вернуться к исходному URL, чтобы повторить процесс, пока не будет достигнут последний ряд:

Enum READYSTATE
    READYSTATE_UNINITIALIZED = 0
    READYSTATE_LOADING = 1
    READYSTATE_LOADED = 2
    READYSTATE_INTERACTIVE = 3
    READYSTATE_COMPLETE = 4
End Enum

Sub Test()
Dim ws As Worksheet: Set ws = Sheets("Sheet1") 'set the Sheet you are using here
Dim ie As New InternetExplorer
Dim HTML As HTMLDocument
Dim i As Long
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
'get the last row with a value in column A
strURL = "https://www.xxxxxxxxxxxx.com" 'set your initial URL here

ie.Visible = True
ie.navigate strURL

Do While (ie.Busy Or ie.READYSTATE <> READYSTATE.READYSTATE_COMPLETE)
  DoEvents
Loop

Set HTML = ie.document

For i = 2 To LastRow 'loop from row 2 to Last

    Set svalue1 = HTML.getElementById("Txt Box ID")

    svalue1.Value = ws.Cells(i, 1).Value 'enter the value from currect cell

    HTML.getElementsByName("Button Name").Item.Click


    Do While (ie.Busy Or ie.READYSTATE <> READYSTATE.READYSTATE_COMPLETE)
      DoEvents
    Loop


    'Do your data scrapping here, then below go back to your initial URL to repeat the process

    ie.navigate strURL

    Do While (ie.Busy Or ie.READYSTATE <> READYSTATE.READYSTATE_COMPLETE)
      DoEvents
    Loop

Next i

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