Я хочу скопировать данные из таблицы на веб-странице в Excel с использованием кода VBA, но на листе Excel ничего не получилось: (.
Я попытался собрать код VBA из разных источниковВот мой код:
Sub CopyWebData()
Dim IE As Object
On Error Resume Next
Application.DisplayAlerts = False
Set IE = CreateObject("InternetExplorer.Application")
With IE
.Visible = True
.navigate "https://eresearch.fidelity.com/eresearch/evaluate/fundamentals/earnings.jhtml?tab=details&symbols=GOOG"
Do Until .readyState = 4: DoEvents: Loop
End With
Dim idoc As MSHTML.HTMLDocument
Dim elem As MSHTML.IHTMLElement
Set idoc = IE.document
Set elem = idoc.getElementsByClassName("layout-outer-table-width")(0).innerText
Sheets("Sheet1").Activate
Range("A1:A1000") = "" ' erase previous data
Range("A1").Select
Range("A1").Value = elem
End Sub
Это защищенная паролем веб-страница, и я вошел в систему, чтобы увидеть, что веб-страница была успешно извлечена кодом VBA. Однако данные в таблицена этой веб-странице не удалось скопировать в Excel - я ничего не видел на листе назначения.
Как вы можете видеть, я использовал код .getElementsByClassName ("layout-external-table-width"), так как я использовал Chrome "Осмотрел функцию «Проверка веб-страницы» и обнаружил, что, когда мышь наводила курсор на операторы:
...<table cellspacing="0" cellpadding="0" border="0" class="layout-outer-table-width"> == $0
<tbody>...</tbody>
</table>
часть веб-страницы, покрывающей нужную мне таблицу, была затенена. Затем я закодировал имя класса «layout-external-table-width ". Однако, как я уже сказал, на листе Excel ничего не появляется.
Любая инструкция будет принята с благодарностью!