Я сделал макрос, который защищает лист и меняет лист на лист «А», затем сохраняет файл и после этого возвращается к листу, с которого я начал.
К сожалению, опция Сохранить как не работает, когда мой макрос находится в книге. Всякий раз, когда я нажимаю «Сохранить как» и хочу найти место для сохранения моего файла, макрос начинает работать и отключает действие, которое я пытался выполнить.
Это код, о котором я пишу:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = True
Application.EnableCancelKey = XlEnableCancelKey.xlDisabled
Application.ScreenUpdating = False
Application.EnableEvents = False
Dim aktywny As Worksheet
Set aktywny = ActiveSheet
For Each Sh In ThisWorkbook.Sheets
If InStr(Sh.Name, ".") <> 0 Then
If Sh.ProtectContents = False Then
Sh.Protect Password:="XXX", DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFormattingCells:=True, AllowFormattingColumns:=True
End If
End If
Next
ThisWorkbook.Sheets("A").Activate
Me.Save
aktywny.Activate
ThisWorkbook.Saved = True
Cancel = True
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub