Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.06.09;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.014 c
1-26565
BJValentine
2003-05-26 15:45
2003.06.09
TStringGrid


14-26671
Suhomlin
2003-05-24 13:56
2003.06.09
Взаимодействие с Microsoft Outlook


14-26678
Song
2003-05-24 10:29
2003.06.09
http://coolbaranoff.narod.ru/ :))


7-26823
Some1
2003-03-30 08:38
2003.06.09
Идентификация дискетки


1-26584
baracuda
2003-05-28 15:06
2003.06.09
запись в файл