Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
VBA Создание QueryTable с "авторизацией", VBA QueryTable
 
Добрый день, уважаемые форумчане!
Есть следующая проблема:
Мне нужно создать веб запрос, но чтобы выйти на нужную таблицу необходимо предварительно, заполнить поля для поиска:
Код
tLinkResourse = "http://www.rci.gouv.mc/rc/"
 
Set IE = CreateObject("InternetExplorer.Application")
  IE.Navigate tLinkResourse 'Загружаем страницу
 While IE.busy Or (IE.readyState <> 4): DoEvents: Wend 'Ждем загрузку страницы
         IE.Visible = True ' делаем видимым для отладки
 Set IEdoc = IE.document: DoEvents: DoEvents
 
' текст для поиска на сайте
tCompanyName="test"     
 
     '29 - Monaco
 
' ШАГ - 1 иду через веб форму
 
            'Заполняю поле для поиска
           IEdoc.getElementsByName("rse").Item(0).Value = tCompanyName
            'нажимаем кнопку
           IEdoc.getElementsByTagName("button").Item(0).Click
 
'          ЭТОТ СПОСОБ РАБОТАЕТ
 
'          ТЕПЕРЬ ПРОБУЮ ДРУГИМ СПОСОБОМ
 
' ШАГ - 2 генерирую ту же ссылку и просто отдаю ее в гет
 
            IE.Navigate "http://www.rci.gouv.mc/rc/resultatRechercheRSEGratuit.jsp?rse=" & tCompanyName
            While IE.busy Or (IE.readyState <> 4): DoEvents: Wend 'Ждем загрузку страницы
           tGet = IE.LocationURL 'Получаем текущий URL '(по сути получаю ЮРЛ обратно)
 
'Тоже работает
 
'ШАГ 3 - теперь пытаюсь вывести данные на лист
tConnStr = "URL;" & tGet 
 
With ActiveSheet.QueryTables.Add(Connection:=tConnStr, Destination:=Range("$A$1"))
        .Name = "resultat"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = False
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        
         '.WebSelectionType = xlSpecifiedTables
        '.WebTables = 1
       
        .WebSelectionType = xlEntirePage
         '.WebSelectionType = WEBTYPE
       .WebFormatting = xlWebFormattingAll
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
        .Delete
        '.WebTables = "zz"
  
   End With
'Этот код тоже срабатывает.

'ПРОБЛЕМА заключается в том что если я меняю текст для поиска то я прохожу успешно два шага, и потом всегда получаю QueryTables самую первую (по первому искомому тексту) Кто может подсказать в какую сторону рыть. Например, если я искал "тест" то в следующий раз когда я ищу "новый поиск", я получаю открытый браузер с результатами "новый поиск", а на лист вылазит результат поиска "тест", хотя Гет у QueryTables правильный
Изменено: gryabs - 17.08.2016 16:08:03
Страницы: 1
Наверх