К списку форумов К списку тем
Регистрация    Правила    Главная форума    Поиск   
Имя: Пароль:
Рекомендовать в новости

Excel ADODB Пароль

Гость
0 - 28.12.2015 - 10:16
Никак не могу сам нагуглить, помогите пожалуйста.

Нужно импортировать данные из Excel, книга запаролена.
Возможно ли получить данные из такой книги с помощью ADODB?

Через объект Excel.Application уже давно написал обработку, сейчас нужно было немного доработать. Начал дорабатывать. На тесте дважды отключился комп. Появились подозрения на перегрев проца. Был сильно удивлен, при тестировании выяснилось, что полностью нагружает 4 проца обращение к Excel. Я так понимаю данные в запароленной книге зашифрованы, и при каждом обращении к данным ячейке, полностью декодируется книга. Естественно все это очень не быстро (около получаса).
Через ADODB со снятым паролем - за 15 секунд извлекаются все данные.

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



1 - 28.12.2015 - 11:03
Попробуй обратиться к книге как к базе данных, открыв ее в коде с паролем, считав ее всю сразу через SELECT * и загнав в какую-нибудь временную таблицу, скорость обычно в несколько сот раз выше, чем при построчном чтении.
Гость
2 - 29.12.2015 - 10:15
Сутки форум не давал мне писать ответы (после регистрации) :(

1-bma1 > так как раз вопрос в том, как через запрос (объект ADODB) обратиться к запароленной книге Эксель.

Сделал пока так:
- с помощью объекта Excel.Application открываю книгу
- затем сохраняю во временной папке, но уже без пароля.
- Получаю данные с помощью запроса.
- Удаляю файл из временной папки.


К списку вопросов






Copyright ©, Все права защищены