VBA. Эксель. Поисковые запросы на сайтах

Узнай цену своей работы

Формулировка задачи:

доброго времени суток! Подскажите новичку, как можно в Экселе через vba на сайте
http://rts.micex.ru/ru/search.aspx
вбить в строку поиска определенную бумагу (напр, Газпром) и вывести в Эксель количество объявлений по бумаге.
Не могу разобраться какие библиотеки для этого нужно подключить к ВБА и как в итоге отправлять информацию на сайт
Если можно, по пунктам опишите, пожалуйста, все необходимые процедуры. И если есть подхоящий код, то буду очень благодарен!

Решение задачи: «VBA. Эксель. Поисковые запросы на сайтах»

textual
Листинг программы
Sub open_GAZR()

Dim IE As Object
Dim inpS As MSHTML.IHTMLElementCollection
Dim el As MSHTML.IHTMLElement
Dim A, m, pos As Integer
Dim tempHTML, St As String
Dim Loc As String

Set IE = CreateObject("internetexplorer.application")
IE.Visible = True
IE.navigate "rts.micex.ru/ru/csearch.aspx"

Do While IE.readyState <> 4
    DoEvents
Loop

Loc = IE.LocationURL ' Location URL before Click

Set inpS = IE.document.getElementsByTagName("input")
For Each el In inpS
    If el.Name = "sstr" Then
        el.Value = "Газпром"
    End If
    If el.Name = "bSubmit" Then
        el.Click
    End If
Next el

Do While Loc = IE.LocationURL ' Wait for change
    DoEvents
Loop

Do While IE.readyState <> 4
    DoEvents
Loop

A = 0
Do
    A = A + 1
    tempHTML = IE.document.body.innerHTML
Loop Until InStr(A, tempHTML, "Найдено")

pos = InStr(A, tempHTML, "Найдено")
m = pos + 9
Do Until Mid(tempHTML, m, 1) = Chr(32)
    m = m + 1
Loop

St = Mid(tempHTML, pos + 9, m - pos - 9)

MsgBox St

End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.25 из 5