Ребята, привет.
Помогите разобраться. Сразу оговорюсь у меня низкий уровень владения VBA.
Требуется собрать с HTML страниц информацию и внести в таблицу. Ссылка на страницы отличается номером страницы, номер страницы с которой необходимо собрать информацию содержится в ячейках с A2 до An, где n - это значение в ячейке B2
Искомая информация на странице имеет вид:
<span class="custom" id="label">
<a class="header@
target="_blank" Shape ="">Искомое значение</a>
Нужно Искомое значение с каждой страницы забить в ячейки с B2 до Bn.
Вот такую штуку я нафантазировал)
Sub Graber()
set XSheet = ThisWorkbook.Sheets(1)
set XWeb = CreateObject("InternetExplorer.Aplication")
set XNumber = XSheet.Cells(1, B)
For i = "Тут не понятно, нужно от ячейки A2 до ячейки A(XNumber)"
XCValue = Cells(i, "A")
link = "http://" & XCValue
XWeb.navigate link
While XWeb.busy Or (XWeb.readystate <> 4): DoEvents: Wend
getHTML = XWeb.document.body.innerHTML
dl = Len(getHTML)
a = InStr(na, getHTML, "id="label")
If a > 0 Then
XCR = XSheet.Cells(Rows.Count, 1).End(x1Up).Row
rn = InStr(a, getHTML, ">")
rk = InStr(rn, getHTML, "</a>")
rrn = Mid(getHTML, rn + 1, rk - rn - 1)
XSheet.Cells(XCR + 1, "B") = rrn
End
Помогите разобраться. Сразу оговорюсь у меня низкий уровень владения VBA.
Требуется собрать с HTML страниц информацию и внести в таблицу. Ссылка на страницы отличается номером страницы, номер страницы с которой необходимо собрать информацию содержится в ячейках с A2 до An, где n - это значение в ячейке B2
Искомая информация на странице имеет вид:
<span class="custom" id="label">
<a class="header@
target="_blank" Shape ="">Искомое значение</a>
Нужно Искомое значение с каждой страницы забить в ячейки с B2 до Bn.
Вот такую штуку я нафантазировал)
Sub Graber()
set XSheet = ThisWorkbook.Sheets(1)
set XWeb = CreateObject("InternetExplorer.Aplication")
set XNumber = XSheet.Cells(1, B)
For i = "Тут не понятно, нужно от ячейки A2 до ячейки A(XNumber)"
XCValue = Cells(i, "A")
link = "http://" & XCValue
XWeb.navigate link
While XWeb.busy Or (XWeb.readystate <> 4): DoEvents: Wend
getHTML = XWeb.document.body.innerHTML
dl = Len(getHTML)
a = InStr(na, getHTML, "id="label")
If a > 0 Then
XCR = XSheet.Cells(Rows.Count, 1).End(x1Up).Row
rn = InStr(a, getHTML, ">")
rk = InStr(rn, getHTML, "</a>")
rrn = Mid(getHTML, rn + 1, rk - rn - 1)
XSheet.Cells(XCR + 1, "B") = rrn
End
Изменено: - 25.05.2020 13:47:10