Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.29;
Скачать: CL | DM;

Вниз

Как оптимизировать чтение excel документа   Найти похожие ветки 

 
msgipss   (2007-03-20 16:41) [0]

Здравствуйте знатоки,
задача следующая: нужно сохранить содержимое excel документа в html формате.
Сразу скажу, что родной метод объекта excel (сохранить как html) не подходит по многим причинам.
Делаем программно следующее:
1. создаем объект excel, загружаем в него документ
2. построчно разбираем его активные области (чтение всех необходимых свойств ячеек)
3. собираем html в нужном нам виде.

Все работает, но достаточно медленно. Работа второго пункта очень тормозит. Получение каждой ячейки, чтение всех ее свойств.

Подскажите варианты оптимизации, если они возможны ? Или программно из внешнего приложения нельзя получить ту производительность (или близкую) которой достигает родной метод excel"я.
Возможно ли прочитать документ (все свойства всех ячеек) в многопоточном режиме (разделив между ними документ на части).

Заранее благодарен за любую информацию по данному вопросу


 
umbra ©   (2007-03-20 19:14) [1]


> Возможно ли прочитать документ (все свойства всех ячеек)
> в многопоточном режиме

нет.

> Получение каждой ячейки, чтение всех ее свойств.
>

а это обязательно? неужели у каждой ячейки разные свойства? Может быть, можно читать диапазонами?


 
msgipss   (2007-03-20 19:46) [2]

>нет.
нельзя прочитать  в многопоточном режиме потому что сервер excel - sta?

>а это обязательно? неужели у каждой ячейки разные свойства? Может быть, >можно читать диапазонами?
к сожалению нужно читать каждую ячейку *(, или стоп, что значит читать диапазонами ? Имеется в виду что можно прочитать в какую нить структуру указанный range и потом его обрабатывать в памяти ? Если так можно сделать - подскажите пожалуйста как это сделать ?


 
umbra ©   (2007-03-21 17:20) [3]


> нельзя прочитать  в многопоточном режиме потому что сервер
> excel - sta?

да :) . Но можно насоздавать кучу копий файла и работать с каждой отдельно. Но это уже извращение, по-моему

> Имеется в виду что можно прочитать в какую нить структуру
> указанный range и потом его обрабатывать в памяти ?

Не слышал о таком.

А как к экселю доступ получаете? Раннее связывание должно быть быстрее.


 
msgipss   (2007-03-23 08:56) [4]

>А как к экселю доступ получаете? Раннее связывание должно быть быстрее.
использую компонент с палитры, используется таблица типов, а значит и раннее связывание - насколько я помню - да ?

мдаа, плохо конечно, что все так медленно *(, аналогичный скрипт написанный на vba (в том же документе либо в загруженной надстройке) работает в разы быстрее (раз в 6-7). Должно быть конечно медленнее, но не в разы же *((.
наверное придется по якутски делить логику на vba и delphi



Страницы: 1 вся ветка

Текущий архив: 2011.05.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
15-1297276708
GanibalLector
2011-02-09 21:38
2011.05.29
Распознавание рукописных цифр.


15-1297413223
Mephistos
2011-02-11 11:33
2011.05.29
перевод фразы


15-1297778078
TUser
2011-02-15 16:54
2011.05.29
Лапы и полулапы шкурок яхобаба; Плющилки тракторные; ...


15-1297258085
Tonick2001
2011-02-09 16:28
2011.05.29
Отключение рекции на событие


2-1297940727
SIV5000
2011-02-17 14:05
2011.05.29
Загрузка файла разными потоками