Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> QueryTable, new web-query 
:(
    Опции темы
Zipo
Дата 2.10.2006, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 4.11.2003

Репутация: нет
Всего: 0



Добрый вечер, столкнулся с необходимостью импорта данных с веб'а.
Нашел как использовать QueryTable, что бы достать содержимое web-страницы.

Но никак не могу найти как проинициализировать QueryTable на исполнение с выбором источника данных из веб. Как это происходит в экселе при:
Данные -> Импорт внешних данных -> создать веб-запрос
Data > Import External Data > New Web Query
Т.е. источник у меня не постоянный и необходимо пользователю дать его выбирать и потом обработывать данные.

Если записать макрос по этим действиям то получим
Код

    With ActiveSheet.QueryTables.Add(Connection:="URL;http://braindumps.com.ua", _
        Destination:=Range("A1"))
        .Name = "braindumps.com.ua"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "8"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With


Где .WebTables = "8" это выбранная таблица данных

Вот интересует как запустить New Web Query для инициализации QueryTables?

PM MAIL   Вверх
Zipo
Дата 9.10.2006, 09:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 151
Регистрация: 4.11.2003

Репутация: нет
Всего: 0



Вызвать диалог можно

Application.Dialogs( xlDialogNewWebQuery ).Show

Возникла другая проблема. Эксель используется как КОМ объект и при использовании этого диалога выпрыгивает сам эксель для выбора ячейки для хранения данных.
Есть два выхода, но пока не один реализовать не получается.

1. Скрыть второй диалог, который идет следом за xlDialogNewWebQuery при выборе ячейки для данных
2. Создать QueryTable в ручную и потом на нем вызвать Edit web-query, что бы опять выкинуть окошко редактирования запроса.

1-ый метод вообще не знаю как реализовать.
2-ой по идее решился бы так:

Application.CommandBars("External Data").Controls(1).Execute

Но код выкидывает ошибку, что данный метод не смог отработать корректно.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0552 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.