Как получить указанный c текст с сайта, чтобы преуспеть? - PullRequest
0 голосов
/ 22 апреля 2020

Я пытаюсь скопировать текст с веб-сайта в Excel.

<input type="text" name="txtTimeStudyNbr" size="15" align="left" maxlength="10" value="4747526">

Но код не работает. Так что, если кто-то поможет мне это исправить. Я буду чувствовать себя потрясающе.

ThisWorkbook.Sheets("data").Range(B2).Value = Doc.getElementById("txtTimeStudyNbr").innerText

<td>
Time Study Nbr:<img src="../images/closeup.gif" height="11" width="11">
<input type="text" name="txtTimeStudyNbr" size="15" align="left" maxlength="10" value="4747526">
&nbsp;&nbsp;&nbsp;
Copy From Time Study: <input type="text" id="txtcopytimestudynbr" name="txtcopytimestudynbr" size="10" maxlength="10" value="">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;     
</td>
Sub copy_project_loop()

Dim IE As Object
Dim Doc As HTMLDocument

Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True

IE.navigate "URL"

Do While IE.Busy
     Application.Wait DateAdd("s", 1, Now)
Loop

Set Doc = IE.document

For intRow = 2 To 10

    Doc.getElementById("txtTimeStudyNbr").Value = ThisWorkbook.Sheets("data").Range("A" & intRow).Value
    Doc.getElementById("Search").Click

    Do While IE.Busy
        Application.Wait DateAdd("s", 1, Now)
    Loop

    ThisWorkbook.Sheets("data").Range(B2).Value = Doc.getElementById("txtTimeStudyNbr").innerText

enter image description here

Ответы [ 2 ]

0 голосов
/ 23 апреля 2020

Вам нужно указать атрибут name по его значению

ThisWorkbook.Worksheets("data").Range(B2).Value = Doc.querySelector("[name=txtTimeStudyNbr]").value

Похоже, у вас есть al oop, который, кстати, будет перезаписывать текущее значение ячейки.

0 голосов
/ 22 апреля 2020

Я бы начал с добавления id="txtTimeStudyNbr" внутри вашего первого тега ввода, учитывая, что вы используете doc.getElementById().

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