Страницы: 1
RSS
Application.Quit
 
Доброго времени суток Всем! :)  
     
Подскажите пожалуйста, правильно ли я добавил метод "Quit"?!  
 
-------------  
'какой-то код...  
With Application  
.DisplayAlerts = True  
.Visible = True  
.EnableCancelKey = xlInterrupt  
.Quit  
End With  
ThisWorkbook.Close False  
-------------  
 
Хотел добиться закрытия (полностью закрыть) Excel и кажется добился, но мало ли что. :)
<FONT COLOR="CadetBlue">
 
после  
 
.quit  
 
работа приложения завершится, остальные строки избыточны  :)
Живи и дай жить..
 
Т.е. End With можно не писать? :)
 
Тоесть правильно?! :)  
 
Мне нужно закрыть книгу Excel еще, если до ".quit" - книга не закрывается :)
<FONT COLOR="CadetBlue">
 
Кажется понял теперь :)  
 
Если нужно завершить выполнение приложения, тогда пишем так:  
-------------  
'какой-то код...  
With Application  
'.DisplayAlerts = True  
'.Visible = True  
'.EnableCancelKey = xlInterrupt  
.Quit  
End With  
ThisWorkbook.Close False  
-------------  
 
слэн, правильно я Вас понял?!
<FONT COLOR="CadetBlue">
 
ThisWorkbook.Close False    
лишнее, до него дело не дойдёт.
 
Игорь, самое интересное что и выше ничего не нужно получается. В справке читал, но не все понятно, так как плохо понимаю на английском, только догадываюсь. :(  
 
Если забрать "ThisWorkbook.Close False" - появляется окно с предупреждением (сохранить). Получается, что доходит.
<FONT COLOR="CadetBlue">
 
Не, не доходит. Просто видит несохранённые изменения и вопит. Сохраните книгу перед Quit или Application.DisplayAlerts = False выше поставьте.
 
Но, вообще-то, с точки зрения "user-experience", насильственное закрытие офисного приложения при закрытии файла, да еще не спросив пользователя, ооооочень плохая идея. Сами посудите, почему вы должны решать за пользователя, что, если ваш файл закрыт, то ему Excel уже не нужен? И потом, вам еще надо прописать код на случай, если у пользователя открыты другие файлы.
KL
 
Ну да, мне пришлось всю работу сперва позакрывать, прежде чем эту мелочь тестить... :)
 
Спасибо за советы и помощь! ;)  
 
Просто никогда еще не применял этот метод, а тут решил красиво закрыть свое приложение, которое может работать, если другие книги Excel не открыты - иначе закроется.  
 
Я проверку сделал, если книги все же открыты - без этого метода, если нет - с ним. :)  
 
P.S. Все-таки пока сам не попробуешь (прощупаешь) до конца не поймешь. ;)
<FONT COLOR="CadetBlue">
 
Правильней будет сообщить Эксу:  
ThisWorkbook.Saved = True  
а дальше уже:  
With Application....  
Если нет других открытых книг, Экс молча покинет зал.  
Но все это с учетом замечания KL.
Я сам - дурнее всякого примера! ...
Страницы: 1
Читают тему
Наверх