![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как закрыть 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