![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Экспорт в Excel [D6]
zorik © (2005-06-08 12:52:00)Делаю экспорт данных в Excel с базы данных. Табличка 1600 строчек на 22 столбца экспортируется приблизительно 5 мин. Никаких компонентов не использую. Все делаю через стандартные функции Excel.Application. Как можно ускорить этот процесс?
Digitman (2005-06-08 14:06:00) [1]
> Вставляю я по 1-й ячейке
неразумно.
вставляй сразу весь диапазон, см.[5]
> рамку вокруг нее рисую
и тоже, видать, для каждой ячейки ?
тоже неразумно.
запиши макрос, посмотри как рамки рисуются сразу для всех ячеек выделенного диапазона, сделай то же самое в Делфи (отличия в синтаксисе - мизерные)
zorik (2005-06-08 14:02:00) [2]Спасибо! Пойду разбиратся. Вставляю я по 1-й ячейке + рамку вокруг нее рисую
Digitman (2005-06-08 13:02:00) [3]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;
TUser (2005-06-08 12:59:00) [4]> Использовать VarArray и копировать данные целиком, а не поячеечно.
Можно сделать запрос через MS Query.
dmitry501 (2005-06-08 12:55:00) [5]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:00) [6]Покажи код - как экспортируешь. Может ты там по одной записи копируешь в Excel.
evvcom (2005-06-08 12:55:00) [7]Использовать VarArray и копировать данные целиком, а не поячеечно.