Я пытаюсь скопировать некоторый текст с веб-страницы в Excel.
Я думаю, что приведенный ниже код переносит его в свойство объекта, называемое output, но мне нужно получить строку.
Я пытался использовать CType для преобразования свойства в строку, но что бы я ни делал, я получаю синтаксическую ошибку.
Я также пытался использовать getElementById (id) .innerText - в зависимости от того, что я прочитал здесь , это все равно вернет свойство, но на самом деле я получаю несоответствие типов, если использую его с выводом, определенным как свойство. Если я определяю вывод как строку, код компилируется нормально, но когда он запускается, я получаю «Переменная объекта или переменная блока не установлена».
Как получить текстовое содержимое элемента в виде строки?
Sub Scrape()
Dim ie As Object
Dim cr As String
Dim li As String
Dim lien As String
Dim cnd As String
Dim doc As New HTMLDocument
Dim id As String
Dim output As Property
Set ie = CreateObject("InternetExplorer.Application")
cr = Cells(1, 1)
li = Cells(1, 2)
lien = URLEncode(li)
cnd = Cells(1, 3)
id = Cells(2, 1)
With ie
.Visible = True
.Navigate (cr & lien & cnd)
Do
DoEvents
Loop Until ie.readyState = READYSTATE_COMPLETE
Set doc = ie.document
Set output = doc.getElementById(id) '<< Can't extract text from this property
End With
End Sub
sp