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

Вниз

Экспорт в Excel   Найти похожие ветки 

 
zorik ©   (2005-06-08 12:52) [0]

Делаю экспорт данных в Excel с базы данных. Табличка 1600 строчек на 22 столбца экспортируется приблизительно 5 мин. Никаких компонентов не использую. Все делаю через стандартные функции Excel.Application. Как можно ускорить этот процесс?


 
dmitry501 ©   (2005-06-08 12:55) [1]

zorik ©   (08.06.05 12:52)
Конечно. Читай на
http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=249&mode=print
http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=272&mode=print
http://www.delphikingdom.ru/asp/viewitem.asp?catalogid=313&mode=print


 
TUser ©   (2005-06-08 12:55) [2]

Покажи код - как экспортируешь. Может ты там по одной записи копируешь в Excel.


 
evvcom ©   (2005-06-08 12:55) [3]

Использовать VarArray и копировать данные целиком, а не поячеечно.


 
TUser ©   (2005-06-08 12:59) [4]

> Использовать VarArray и копировать данные целиком, а не поячеечно.

Можно сделать запрос через MS Query.


 
Digitman ©   (2005-06-08 13:02) [5]

var Rng: OleVariant;

Rng := VarArrayCreate([0,1599,0,21], varVariant);
MyTable.First;
for row := 0 to 1599 do
begin
 for col := 0 to 21 do
   Rng[row][col] := MyTable.Fields[col].Value;
 MyTable.Next;
end;
MyWorksheet.Cells(..).Value := Rng;


 
zorik ©   (2005-06-08 14:02) [6]

Спасибо! Пойду разбиратся. Вставляю я по 1-й ячейке + рамку вокруг нее рисую


 
Digitman ©   (2005-06-08 14:06) [7]


> Вставляю я по 1-й ячейке


неразумно.
вставляй сразу весь диапазон, см.[5]


> рамку вокруг нее рисую


и тоже, видать, для каждой ячейки ?
тоже неразумно.
запиши макрос, посмотри как рамки рисуются сразу для всех ячеек выделенного диапазона, сделай то же самое в Делфи (отличия в синтаксисе - мизерные)



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

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

Наверх




Память: 0.48 MB
Время: 0.041 c
3-1116409161
yk
2005-05-18 13:39
2005.06.29
Как выбрать поле с самой новой датой


4-1114426398
Суслик
2005-04-25 14:53
2005.06.29
TerminateProcess


3-1116325523
Mortal
2005-05-17 14:25
2005.06.29
ADO: Проблема с Datetime


14-1117524817
syte_ser78
2005-05-31 11:33
2005.06.29
Посоветуйте программу


14-1117158047
Kerk
2005-05-27 05:40
2005.06.29
С днем рожденья! 27 мая