Главная страница
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.024 c
14-26776
y-soft
2003-05-21 19:18
2003.06.09
Delphi 7 и Windows CE.NET


14-26719
JibSkeart
2003-05-19 17:44
2003.06.09
Интерестно это видели ?


6-26625
Arkara
2003-04-06 02:09
2003.06.09
Как вызвать стандартную звонилку Windows?


3-26366
Apachi
2003-05-21 07:39
2003.06.09
Дерево


14-26770
Карелин Артем
2003-05-23 15:17
2003.06.09
Общие папки. Win 2000 server.