Когда шаблон открыт, он запускает модуль Auto_open.Отключение модуля VBA после функции «Сохранить как»
Sub Auto_Open()
SaveAsUserForm.Show
End Sub
Это приводит к появлению пользовательской формы, которая говорит, пожалуйста, сохраните как и кнопку команды Ok.
При нажатии Ok это работает этот код.
Private Sub SaveAs_Click()
Dim bFileSaveAs As Boolean
bFileSaveAs = Application.Dialogs(xlDialogSaveAs).Show
If Not bFileSaveAs Then Unload Me
If bFileSaveAs Then
Dim x As Object
Set x = Application.VBE.ActiveVBProject.VBComponents
x.Remove VBComponent:=x.Item("Auto_Open")
Unload Me
End Sub
Это удаляет модуль Auto_Open так сохранить как форма пользователя не всплывала в новом файле, который был только сохранен. Но я хочу, чтобы он был отключен только в том случае, если используется функция save as (как с помощью автоматического открытия модуля, так и на вкладке файла
Мне также нужно, чтобы пользователь отменил его, и он полностью отключит функцию сохранения. сохранить как. Но если используется функция сохранения, она запрашивает пароль, поэтому я могу отредактировать шаблон.
Так что в основном, когда пользователь открывает шаблон, он не может ничего изменить или изменить что-либо, если только он не сэкономит сначала, затем после его сохранения Как и имя файла изменяется, он отключит модуль Auto_Open, поэтому он не запрашивает сохранение при каждом открытии нового файла.
Вы считали проверку имени файла и пути и только показ сообщения, если это «огиальный» путь? Или, если вы пометите шаблон как «только для чтения», тогда ваши пользователи всегда будут «сохранять как» ... –
Отметить его как просить, чтобы они включали макросы. Просто нужно заявление, в котором говорится: «Если файл сохранен As Then remove макрос auto_open' и 'если функция сохранения используется. Затем запросите пароль. – Duraholiday
. Код здесь можно использовать: http://www.mrexcel.com/forum/excel-questions/535724-how-open-save-dialog- box-visual-basic-applications.html –