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

Вниз

правильное закрытие документа Excel   Найти похожие ветки 

 
Xmen   (2008-03-13 14:45) [0]

Привет мастерам!
Как правильно закрыт документ Excel?
Имею такой код(урезан)

exl:=CreateOleObject("Excel.Application");
Workbook:=exl.Application.WorkBooks.Add(ExtractFilePath(Application.ExeName)+"Hisobot.xls");
Sheet:=WorkBook.WorkSheets[i];
Sheet.Cells(5+n,2):=qrMonitoring.fieldbyname("name").AsString;
Sheet.Cells(5+n,3):=qrMonitoring.fieldbyname("client_acc").AsVariant;
Sheet.Cells(5+n,4):=qrMonitoring.fieldbyname("remainder").AsVariant;
exl.Application.Visible:=True;

пишу и открываю
и показываю но после закрытия еxcel.exe остаётся в памяти.
если сделаю

exl.Application.Quit;

то спрашывает о сохранение.
Как правильно поступать?


 
clickmaker ©   (2008-03-13 14:52) [1]


> то спрашывает о сохранение

DisplayAlerts := false; ?


 
Xmen   (2008-03-13 14:57) [2]

Сделал но он сразу закрыл Excel не успел поработат.
Мне нужно чтобы я сам закрывал и чтобы не оставался в памяти.


 
clickmaker ©   (2008-03-13 15:01) [3]


> он сразу закрыл Excel

кто "он"?


 
Xmen   (2008-03-13 15:53) [4]

после долгих работ я уже начел с ним обшатся :) то есть со своей прогой. Он для меня стал родным.
Если без щуток.
Программа открывает еxcelовский документ и я  работаю с документом. после его закрытя, в памяти все равно остается, даже если я закрываю свою программу. (извеняюсь за ощибки для меня русский не родной)


 
Xmen   (2008-03-13 15:55) [5]

после долгих работ я уже начел с ним обшатся :) то есть со своей прогой. Он для меня стал родным.
Если без щуток.
Программа открывает еxcelовский документ и я  работаю с документом. после его закрытя, в памяти все равно остается, даже если я закрываю свою программу. (извеняюсь за ощибки для меня русский не родной)


 
clickmaker ©   (2008-03-13 15:58) [6]

попробуй еще Workbook.Saved := true; перед Quit


 
Xmen   (2008-03-13 16:00) [7]

Я сделал так
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var exl:OleVariant;
   WorkBook, Sheet : Variant;
begin
 exl:=CreateOleObject("Excel.Application");
 if not VarIsEmpty(exl) then
 begin
   exl.Quit;
   exl:=Unassigned;
 end;
end;

Это правильно?



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-1205442921
Relaxxxx
2008-03-14 00:15
2009.01.11
Никак не могу в толк как работать с эти TcxVirtualVerticalGrid, с


8-1188381068
hahol
2007-08-29 13:51
2009.01.11
Эквалайзер


15-1226495684
Ros (r01)
2008-11-12 16:14
2009.01.11
Как получить индекс типа?


2-1227792256
NS1989
2008-11-27 16:24
2009.01.11
Untyped - параметр


6-1196845207
Lamer666
2007-12-05 12:00
2009.01.11
Как после события TWebBrowser DownloadComplete вернуться в цикл!