Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Не устанавливается защита макросом - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Не устанавливается защита макросом
Anis625 Дата: Вторник, 16.04.2019, 13:19 | Сообщение № 1
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
Добрый день, участникам форума!

Собрал с миру по нитке макрос: при занесении в ячейку А1 число 1 макрос снимает защиту с листов и книги (с отображением скрытого листа), при удалении значения защита устанавливается (со скрытием одного листа).

[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   Dim nR As Long
   Dim nC As Integer

   nR = Target.Row
   nC = Target.Column

   If nR = 1 And nC = 1 And Target = "1" Then ОтображениеСкрытыхЛистов
   If nR = 1 And nC = 1 And Target = "" Then СкрытиеЛистов
End Sub
[/vba]

[vba]
Код
Sub ОтображениеСкрытыхЛистов()
ActiveWorkbook.Unprotect "смак456"
Dim a
For Each a In Worksheets
a.Visible = True
Next
    Application.ScreenUpdating = False
    Dim wSheet As Worksheet
    For Each wSheet In Worksheets
        If wSheet.ProtectContents = True Then
            wSheet.Unprotect Password:=смак456
        End If
    Next wSheet
    Application.ScreenUpdating = True
End Sub
[/vba]

[vba]
Код
Sub СкрытиеЛистов()
    Dim ws As Worksheet
        For Each myObj In ActiveWorkbook.Worksheets
            myObj.Protect "смак456", Contents:=True, Scenarios:=True _
                , AllowFormattingCells:=True, AllowFormattingColumns:=True, _
                AllowFormattingRows:=True, AllowInsertingRows:=True
        Next
    Sheets("Даты").Visible = xlSheetVeryHidden  ' Сделать супер скрытый лист
    ActiveWorkbook.Protect "смак456"
End Sub
[/vba]

Когда в тестовом режиме пароль был 0 проблем не было. Когда поставил пароль "смак456" при снятии защиты (то есть если ставлю цифру 1 в ячейке А1) ругается на строку второго макроса
[vba]
Код
wSheet.Unprotect Password:=смак456
[/vba]
Пишет: Неверный пароль. Убедитесь, что отключена клавиша Caps lock и используется правильный регистр.

Подскажите, пожалуйста, в чем ошибка?


Сообщение отредактировал Anis625 - Вторник, 16.04.2019, 13:21
 
Ответить
СообщениеДобрый день, участникам форума!

Собрал с миру по нитке макрос: при занесении в ячейку А1 число 1 макрос снимает защиту с листов и книги (с отображением скрытого листа), при удалении значения защита устанавливается (со скрытием одного листа).

[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   Dim nR As Long
   Dim nC As Integer

   nR = Target.Row
   nC = Target.Column

   If nR = 1 And nC = 1 And Target = "1" Then ОтображениеСкрытыхЛистов
   If nR = 1 And nC = 1 And Target = "" Then СкрытиеЛистов
End Sub
[/vba]

[vba]
Код
Sub ОтображениеСкрытыхЛистов()
ActiveWorkbook.Unprotect "смак456"
Dim a
For Each a In Worksheets
a.Visible = True
Next
    Application.ScreenUpdating = False
    Dim wSheet As Worksheet
    For Each wSheet In Worksheets
        If wSheet.ProtectContents = True Then
            wSheet.Unprotect Password:=смак456
        End If
    Next wSheet
    Application.ScreenUpdating = True
End Sub
[/vba]

[vba]
Код
Sub СкрытиеЛистов()
    Dim ws As Worksheet
        For Each myObj In ActiveWorkbook.Worksheets
            myObj.Protect "смак456", Contents:=True, Scenarios:=True _
                , AllowFormattingCells:=True, AllowFormattingColumns:=True, _
                AllowFormattingRows:=True, AllowInsertingRows:=True
        Next
    Sheets("Даты").Visible = xlSheetVeryHidden  ' Сделать супер скрытый лист
    ActiveWorkbook.Protect "смак456"
End Sub
[/vba]

Когда в тестовом режиме пароль был 0 проблем не было. Когда поставил пароль "смак456" при снятии защиты (то есть если ставлю цифру 1 в ячейке А1) ругается на строку второго макроса
[vba]
Код
wSheet.Unprotect Password:=смак456
[/vba]
Пишет: Неверный пароль. Убедитесь, что отключена клавиша Caps lock и используется правильный регистр.

Подскажите, пожалуйста, в чем ошибка?

Автор - Anis625
Дата добавления - 16.04.2019 в 13:19
Anis625 Дата: Вторник, 16.04.2019, 13:22 | Сообщение № 2
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
При установке пароля все отлично работает (то есть при удалении значения 1 из ячейки А1)
 
Ответить
СообщениеПри установке пароля все отлично работает (то есть при удалении значения 1 из ячейки А1)

Автор - Anis625
Дата добавления - 16.04.2019 в 13:22
sboy Дата: Вторник, 16.04.2019, 13:22 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Пишет: Неверный пароль

кавычки забыли тут
[vba]
Код
Password:=смак456
[/vba]


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
Пишет: Неверный пароль

кавычки забыли тут
[vba]
Код
Password:=смак456
[/vba]

Автор - sboy
Дата добавления - 16.04.2019 в 13:22
Anis625 Дата: Вторник, 16.04.2019, 13:23 | Сообщение № 4
Группа: Заблокированные
Ранг: Ветеран
Сообщений: 674
Репутация: 31 ±
Замечаний: 20% ±

Excel 2013
sboy,

ых, не заметил. Попробовал поставить - работает. Благодарю Вас =)
 
Ответить
Сообщениеsboy,

ых, не заметил. Попробовал поставить - работает. Благодарю Вас =)

Автор - Anis625
Дата добавления - 16.04.2019 в 13:23
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!