1

Тема: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

Задача стоит такая. Необходимо с некой страницы интернета взять информацию и закачать ее в разные ячейки в Excel.
Помимо этого по некой интернет ссылке с той же страницы необходимо скачать файлы, в архиве rаr, извлечь их из этого архива и, опять же, покидать в ячейки Excel ссылки на распакованные файлы.
Значится, Excel я знаю, секс люблю в смысле VBA/VBS умею, знаю, что все это дело вроде бы можно провернуть на VBA, но возникают следующие вопросы:
1. Движок какого браузера лучше для этого выбрать?
2. Может, в VBA это неосуществимо, и требуется использовать HTA?
3. Может, вообще не заморачиваться с объектными моделями браузеров, Excel сам может скачать и страницу и файлы с интернета (а я все еще лох в Excel) ??
4. Каким языком реально автоматизировать распаковку из RAR?
Вобщем, просветите любителя на эту тему...

2

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

1. Движок какого браузера лучше для этого выбрать?

А у нас есть какой-либо браузер, являющийся сервером Automation, окромя IE?

2. Может, в VBA это неосуществимо, и требуется использовать HTA?

В VBA всё побольше возможностей.

4. Каким языком реально автоматизировать распаковку из RAR?

Любым. Ибо выглядеть будет, в любом случае, как запуск winrar.exe/rar.exe/unrar.exe с параметрами.

В любом случае, чтобы дать конкретный ответ нужно знать адрес страницы, что извлечь и куда поместить.

3

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

Любым. Ибо выглядеть будет, в любом случае, как запуск winrar.exe/rar.exe/unrar.exe с параметрами.

У нас нету winrar, мы пользуемся халявным 7zipом... но суть я понял, надо ковырять его командную строку...
(хотя, ежели у кого вдруг под рукой, буду рад, если выложите)

В любом случае, чтобы дать конкретный ответ нужно знать адрес страницы, что извлечь и куда поместить.

Ну вот пример страницы. С нее надо выдернуть в Excel информацию о сроках аукциона, адресах заказчиков, суммах контракта и прочее.
Там же есть закладка "Документы заказа", которые, собственно, и надо скачать...
Вопрос в другом тогда - можно ли все это провернуть, вообще не вылезая из Excel? Чисто за счет его VBA...

4 (изменено: WUT, 2012-04-13 20:42:27)

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

pant-79 пишет:

Вобщем, просветите любителя на эту тему...

Autoit хорош для подобных вещей - написаны специальные библиотеки для работы с IE и Excel, можно и через регулярные выражения выдергивать со страниц текст. В библиотеке для IE есть специальная функция - считать таблицу со веб-страницы в массив, а далее в Excel несложно.
Для 7-zip тоже библиотека есть.

Тут раньше был по раздел Autoit, но раз он теперь удален, вот ссылка:
http://autoit-script.ru/index.php?action=forum

5

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

А АНК в этом плане неприменимо?
А то я что-то пока с AutoIT не очень дружу... опять "новый" язык осваивать... я умею комбинировать АНК и VBS, это без вопросов... если надо будет, замиксую их в одном флаконе, как говорится... но осваивать AutoIT................

6

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

OFF: pant-79, если знаете VBScript — проблем в плане AutoIt у Вас наблюдаться не должно.

7

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

pant-79 пишет:

А АНК в этом плане неприменимо?
А то я что-то пока с AutoIT не очень дружу... опять "новый" язык осваивать... я умею комбинировать АНК и VBS, это без вопросов... если надо будет, замиксую их в одном флаконе, как говорится... но осваивать AutoIT................

Для примера - код, получающий в массив таблицу со страницы:

#include <IE.au3>
#include <Array.au3>
$oIE=_IECreate ("http://zakupki.gov.ru/pgz/public/action/orders/info/common_info/show?notificationId=3087238", 1, 1)
$oTable = _IETableGetCollection($oIE,26)
$avArray = _IETableWriteToArray($oTable)
_ArrayDisplay($avArray)

8

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

ППЦ!!!! Это вы называете аналогом VBS?
Это реально больше аналог PHP.... короче, это явно для меня не "малая кровь".
Отделаться малой кровью было бы, не выходя за рамки VBS и АНК....

9

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

pant-79 пишет:

ППЦ!!!! Это вы называете аналогом VBS?
Это реально больше аналог PHP.... короче, это явно для меня не "малая кровь".
Отделаться малой кровью было бы, не выходя за рамки VBS и АНК....

По крайней мере, средствами AutoIT задачу решить можно и не сложно
А про VBS и АНК путь ответят те кто лучше разбирается - в АНК тоже теперь вроде COM есть, для работы с екселем и IE

10

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

pant-79 пишет:

ППЦ!!!! Это вы называете аналогом VBS?

Угу. По идеологии языка, по конструкциям весьма близок. Это Вам не Форт, не Ада.

11

Re: VBA, HTA, VBS, Что выбрать? Перелить инфу с сайта в Excel.

Я все понимаю. У меня другой вопрос: без него тут точно никуда не денешься?