Лист защищен, лишнее от посторонних глаз спрятано :-)
[vba]Код
Private Sub Workbook_BeforeClose(Cancel As Boolean)
SkrImen
SkrListy
ThisWorkbook.Saved = True
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SkrImen
SkrListy
Cancel = True
End Sub
Private Sub Workbook_Open()
SkrImen
SkrListy
End Sub
Sub SkrListy()
Лист7.Visible = -1
Лист7.Protect Password:="123", UserInterfaceOnly:=True
For Each sh_ In Me.Worksheets
jjj = sh_.CodeName
If sh_.CodeName <> "Лист7" Then
sh_.Visible = 2
End If
Next sh_
End Sub
Sub PokListy()
For Each sh_ In Me.Worksheets
jjj = sh_.CodeName
If sh_.CodeName <> "Лист7" Then
sh_.Visible = -1
End If
Next sh_
End Sub
Sub SkrImen()
For Each n_ In Me.Names
n_.Visible = False
Next n_
End Sub
Sub PokImen()
For Each n_ In Me.Names
n_.Visible = True
Next n_
End Sub
[/vba]
Но вылезла одна проблема, все рабочие макросы, которые в том числе прячут лишнее или включают отключают диспетчер имен видны в книге макросов.
Можно как-то дописать код, чтоб макросы были видны, только когда снята защита листа?