Страницы: 1
RSS
Запрет сохранения изменений при закрытии книги.
 
Доброго времени суток,
подскажите пожалуйста, как реализовать такое, есть файл с шаблоном, в который пользователь может вносить данные, но при сохранении/закрытии, не сохранялись изменения.
реально ли это сделать ?
 
Поставить атрибут "Только чтение". В таком случае сохранение будет "Сохранить как", то есть, создание копии.
Пользователи, как школьники, учиться хотят далеко не все, а отличниками становятся единицы.
Проблема - это ситуация, в решении которой человек не заинтересован.
 
http://www.excelworld.ru/forum/2-3841-1
 
Вот только сохранить этот код в книге, будет не просто  ;)  
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Close False
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
End Sub


.... но с помощью breakpoint можно ;)

Этот код нужно разместить в коде Книги, тогда нажатие на сохранить - будет игнорироваться, а при закрытии сохраняться без внесеных изменений.
Изменено: SkyShark - 01.03.2013 15:16:30
 
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.Close False
End Sub


Глючит, зараза. Я отказался.
 
RAN,

В моей связке все отрабатывало нормально, проблем не заметил, да и книгу нельзя сохранить даже "SaveAs".

Но если нужно оставить эту возможность, можно заменить строку Cancel = True на Cancel = SaveAsUI + 1
 
SkyShark,
http://www.planetaexcel.ru/forum/?PAGE_NAME=message&FID=8&TID=22153&MID=194797#message194797
Не поленился, нашел.  :)
 
RAN,

Действительно, есть такая проблема :)

Спасибо за подсказку;)
 
Я думаю хватает этого:
Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Me.Saved = True
End Sub

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Cancel = True
End Sub
 
Да, сохранить код просто:
Ctrl+G, application.EnableEvents=False, Enter, сохраняем, закрываем Эксель полностью.
 
Упс, открыл ссылку...
Ну у меня чуть иначе :)
Страницы: 1
Читают тему
Наверх