Вниз
Скачать: CL | DM;

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

 
АлеКо   (2003-05-27 07:44) [0]

Привет всезнайки! Вот с какой проблеммой я сталкнулся.

Из своего приложения открываю книгу Excel. Делаю ее невидимой. Получаю из нее данные и когда я ее закрываю то она остается в памяти и программа выдает сообщение "сервер не отвечает".
Дело в том что в данной книге присутствуют формулы которрые пересчитываются при открытии. Если работать с пустой книгой то приложение закрывается нормально. Вот мой код
ExcelApp := CreateOleObject("Excel.Application");
ExcelApp.Application.EnableEvents := false;
ExcelApp.Application.EnableEvents := true;

.. обработка ...

Workbook.Saved:=true;
Workbook.Close;
ExcelApp.Quit;
Sheet:=UnAssigned;
Workbook:=UnAssigned;
ExcelApp:=UnAssigned;

может кто подскажет как быть с проблеммой.


 
AbrosimovA   (2003-05-28 11:34) [1]

У меня была почти похожая проблема, только разница в том, что
я писал данные в Excel. Когда этих данных было мало, то в памяти
Excel не оставался, а если их было много, то увы...
Проблема состояла в том, что я писал в Excel в цикле в каждую ячейку последовательно. Проблема решилась следующим образом:

1. Создал вариантный массив, который заполнил данными для записи
в Excel(много их или мало - это неважно).
2. Затем массив чоком кинул в Excel(это оказалось быстрее в
несколько раз, чем поячеечная запись).

После этого проблемы не стало.
Возможно тебе надо решить вопрос времени вычисления твоих формул и не вычислять их при открытии Excel.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
14-26687
Scorpx
2003-05-25 10:28
2003.06.09
Новая функция у программы


1-26580
OlegM
2003-05-28 13:31
2003.06.09
Добавление обработчиков к создаваемым компонентам


3-26337
kingdom2000
2003-05-16 19:07
2003.06.09
TDBGridEh и GetEditText(X, Y)


1-26442
zsv
2003-05-29 08:24
2003.06.09
Печать


1-26532
Deus
2003-05-25 21:05
2003.06.09
Насчёт размера программ(в памяти)




   Наверх