Добрый день, уважаемые разработчики!
Прошу помочь с макросом VBA...
Имеется книга Excel, в которой 7 листов, у последнего имя "MacrosTurningOn".
Задача:
1. При закрытии книги, макрос должен СКРЫВАТЬ (как можно лучше прятать) все листы, кроме последнего - "MacrosTurningOn". А лист "MacrosTurningOn", наоборот, раскрывать.
нарыл в гугле код... Но он требует доработки в части раскрытия листа "MacrosTurningOn"...
2. При открытии книги, пользователь видит, соответственно только 1 лист - "MacrosTurningOn", на котором должна быть кнопка, например, "Готов к работе с книгой".
2.1. При нажатии на эту кнопку происходит следующее:
2.1.1. Раскрываются все скрытые листы (№№ 1-6)
2.1.2. Скрывается 7-ой лист "MacrosTurningOn".
При этом у меня в этой же книге имеется макрос, защищающий листы паролем:
Соответственно, нужно сделать:
а) макрос на раскрытие листа "MacrosTurningOn" и скрытие других листов при закрытии книги;
б) макрос на кнопку с вышеописанными функциями (пункт 2.1.)
Заранее благодарен за помощь!
Прошу помочь с макросом VBA...
Имеется книга Excel, в которой 7 листов, у последнего имя "MacrosTurningOn".
Задача:
1. При закрытии книги, макрос должен СКРЫВАТЬ (как можно лучше прятать) все листы, кроме последнего - "MacrosTurningOn". А лист "MacrosTurningOn", наоборот, раскрывать.
нарыл в гугле код... Но он требует доработки в части раскрытия листа "MacrosTurningOn"...
| Код |
|---|
Private Sub Workbook_BeforeClose(Cancel As Boolean) Application.ScreenUpdating = False Dim wsheet As Worksheet For Each wsheet In ActiveWorkbook.Sheets If wsheet.Name <> "MacrosTurningOn" Then wsheet.Visible = xlVeryHidden Next Application.ScreenUpdating = True End Sub |
2. При открытии книги, пользователь видит, соответственно только 1 лист - "MacrosTurningOn", на котором должна быть кнопка, например, "Готов к работе с книгой".
2.1. При нажатии на эту кнопку происходит следующее:
2.1.1. Раскрываются все скрытые листы (№№ 1-6)
2.1.2. Скрывается 7-ой лист "MacrosTurningOn".
При этом у меня в этой же книге имеется макрос, защищающий листы паролем:
| Код |
|---|
Private Sub Workbook_Open() Const MyPassword = "***********" With Sheets(1) .Unprotect Password:=MyPassword .EnableOutlining = True .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, _ AllowFiltering:=True, UserInterfaceOnly:=True End With With Sheets(3) .Unprotect Password:=MyPassword .EnableOutlining = True .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, _ AllowFiltering:=True, UserInterfaceOnly:=True End With With Sheets(4) .Unprotect Password:=MyPassword .EnableOutlining = True .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, _ AllowFiltering:=True, UserInterfaceOnly:=True End With With Sheets(5) .Unprotect Password:=MyPassword .EnableOutlining = True .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, _ AllowFiltering:=True, UserInterfaceOnly:=True End With With Sheets(6) .Unprotect Password:=MyPassword .EnableOutlining = True .Protect Password:=MyPassword, DrawingObjects:=True, Contents:=True, Scenarios:=True, _ AllowFiltering:=True, UserInterfaceOnly:=True End With End Sub |
Соответственно, нужно сделать:
а) макрос на раскрытие листа "MacrosTurningOn" и скрытие других листов при закрытии книги;
б) макрос на кнопку с вышеописанными функциями (пункт 2.1.)
Заранее благодарен за помощь!
Изменено: - 02.09.2015 14:44:06