Страницы: 1
RSS
Запрет на сохранение книги
 
Добрый день, еще раз!  
Подскажите, как в событии Auto_Open отключить сохранение книги? Причем, так чтобы дискета на панели и "сохранить как" были недоступны. А при закрытии не выдавалось сообщение о сохранении.  
Спасибо!
 
А причем здесь событие Auto_Open?  
Вам надо событие BeforeSave.  
 
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
Cancel = True  
End Sub  
Кнопки и меню будут доступны, но сохранения происходить не будет.
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)  
ThisWorkbook.Saved = True  
End Sub  
Не будет вопросов при закрытии.
 
Спасибо, но знаете, я пробовал использовать Sub Workbook_BeforeSave..  
Все равно сохраняет..    
Может что-то не так делаю?  
Из этой темы  
http://www.planetaexcel.ru/forum.php?thread_id=1083&PHPSESSID1=&page_forum=1&allnum_forum=19  
скачал пример.. у меня закрывает файл..
 
Попробуйте что-нибудь изменить в этой книге и сохранить
 
Спасибо, сохранить не получается) Я обратил внимание что код написан не в модуле. Это важно? Я писал в модуле, может поэтому и не работало?  
PS. Сейчас уже дома, завтра на работе проверю..
 
Код должен быть в модуле "ЭтаКнига"
 
Добрый день!  
Я проверил на работе Ваш файл.. Он сохраняет изменения... И задает вопрос при закрытии... В чем может быть дело?
 
Высокий уровень безопастности - макросы отключены
 
Проверил, уровень безопасности - средний, сам разрешаю макросы... В чем же дело?
 
После перезагрузки стало работать как у всех) Еще раз спасибо!
 
А как же теперь сохранить это изменение в книге?  
{quote}{login=Лузер™}{date=22.05.2008 03:28}{thema=}{post}Кнопки и меню будут доступны, но сохранения происходить не будет.{/post}{/quote}
 
попробуй открыть книгу с высоким уровнем безопасности, затем добавить код и пересохрнаить ее )  
 
Но одна проблема останется - с высоким уровнем безопасности с книгой можно творить что угодно...
 
Очень хороший макрос. Мне такой и нужен, при работе функции сохранения файла заблокированы. Но вот как сделать чтобы при закрытии файла файл сохранялся. Неужели никуда нельзя вставить условия если файл закрывается > (да)сохранить файл > (нет)заблокировать функцию сохранения. Т.е. в процессе работы сохранение не работает, а при закрытии файла, сам сохраняется
 
Почему бы не сохранить книгу в формате шаблона (xlt, xltx, xltm), тогда при закрытии будет предлагаться "Сохранить как", хотя может не в вашем случае...
 
в моем случае событие по закрытию книги само сохраняет файл, но функция сохранения  во время работы должна быть отключена. Для этого в событие по сохранению необходимо прописать условие. Но что именно прописать я не знаю (совсем зеленый в делах экселя) но код должен быть примерно такого содержания:  
 
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
If ThisWorkbook.Close = True Then  
   Cancel = False  
Else  
   Cancel = True  
End If    
End Sub  
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)  
   ThisWorkbook.Saved = True  
End Sub  
 
но поскольку я не знаю ни синтаксиса ни функций обращения у меня ничего не работает(((((((
 
BuTbKa, а объясните смысл всего этого. Если в результате книга ВСЁ РАВНО должна быть сохранена, почему (зачем) сохранение нужно запретить ДО закрытия. Смысл в чём?
 
книга рабочая. При открытии все листы защищены паролем, книга защищена паролем, часть столбцов/строк скрыты от пользователя. При открытии необходимо выбрать или просто просмотр (все остается как есть) или начать расчет (ввести пароль и в этом случае все листы разблокируются, отображаются все строки и столбцы). При закрытии книги внось все блокируется и скрывается. Вот для того чтобы она не была сохранена в рабочем варианте и нужно заблокировать сохранение.
 
Попробуйте вставить в модуль книги:  
Public Flag As Boolean  
 
Private Sub Workbook_BeforeClose(Cancel As Boolean)  
   Flag = True  
   If Flag Then ThisWorkbook.Save  
End Sub  
 
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
   If Flag = False Then Cancel = True  
End Sub
 
Спасибо БОЛЬШОЕ, как раз то что нужно. Вроде верстать книгу закончил, а может еще чего в голову взбредет)))
Страницы: 1
Читают тему
Наверх