Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2009.01.11;
Скачать: [xml.tar.bz2];

Вниз

правильное закрытие документа 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.009 c
3-1212615009
rosl
2008-06-05 01:30
2009.01.11
запрос sql


15-1226462765
Slider007
2008-11-12 07:06
2009.01.11
С днем рождения ! 12 ноября 2008 среда


2-1227898264
9899100
2008-11-28 21:51
2009.01.11
TlistView


15-1226583210
codemaster
2008-11-13 16:33
2009.01.11
Проигрыватель


2-1227859736
начинающий программист
2008-11-28 11:08
2009.01.11
adoquery1.fields





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский