Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как закрыть Excel, чтобы не просил сохранить книгу ? [D7, Win2k, WinXP]


ANB ©   (2005-11-16 13:44:00) 

Использую позднее связывание. Файл создавался в экселе более ранней версии и при закрытии эксель предлагает сохранить его в новом формате. Кнопку "отмена" руками жать все время не прикольно, так как все файлы такие и их будет не мало.


ShiFT   (2005-11-17 06:08:00) [1]

 try
   Excel := GetActiveOleObject( 'Excel.Application');
 except
   Excel := CreateOleObject( 'Excel.Application');
 end;

При такой конструкции. Да наверное Жестоко Закрывать через Excel.Quit.

а если использовать только
 Excel := CreateOleObject( 'Excel.Application');
то создастся отдельное окно( процесс), которое можно закрывать.

по поводу закрытия, ещё можно использовать
 WBook.Close( SaveChanges := False); // Закрыть без сохранения.


Prohodil Mimo   (2005-11-16 23:03:00) [2]

А вот в конце не забудь вернуть опять в True, иначе если кто-то открыл свой документ, изменил в нём что-то, а после ты выставил  DisplayAlerts := False; то при закрытии Excel даже не подумает спросить юзера о сохранении.

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


ANB   (2005-11-16 14:07:00) [3]


> ShiFT   (16.11.05 14:01) [1]

Спасибо ! Все работает.


ShiFT   (2005-11-16 14:01:00) [4]

Excel.Application.DisplayAlerts := False;
 Excel.Quit


Наверх

Титульная страница Поиск, карта сайта Написать письмо