Я пытался извлечь ячейку из таблицы HTML в ячейку excel с помощью функции. таблица выглядит так:Вставка ячейки таблицы HTML в ячейку листа excel без id
| 1Q | 2Q | 3Q |
income | 23 | 34 | 22 |
expenses | 11 | 19 | 10 |
.
.
.
я не могу получить элементы по идентификатору, так что я создал две петли для поиска элемента с помощью элемента. код может найти элементы (в моем случае слово «расходы» col1 row2), но я не знаю, как получить значение ячейки вправо (11 в данном случае)
Dim IE As Object
Dim doc As Object
Dim colTR As Object
Dim colTD As Object
Dim tr As Object
Dim td As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = True
IE.Navigate "www.mywebpage.com"
Do Until IE.ReadyState = 4
DoEvents
Loop
Set doc = IE.Document
Set colTR = doc.GetElementsByTagName("TR")
For Each tr In colTR
Set colTD = tr.GetElementsByTagName("TD")
For Each td In colTD
If td.innertext = "expenses" Then
TheValueIWant = tr.item(1).innertext
End If
Next td
Next tr
IE.Quit
Set IE = Nothing
Set doc = Nothing
Set colTR = Nothing
Set colTD = Nothing
Set td = Nothing
Set tr = Nothing
заранее спасибо
11 - это еще больше столбцов. трудно сказать из ваших данных примера, но, возможно, 1 или 2 или более. вы можете сделать цикл с 'debug.print', чтобы понять это в первый раз, чем отрегулировать код соответственно. Таким образом, это будет 'tr.Cells (2) .innertext', если это был 2-й столбец. –