Может ли VBA изменить видимость листа, когда целостность структуры рабочей книги заблокирована? - PullRequest
0 голосов
/ 20 января 2020

Я хочу заблокировать целостность книги, чтобы пользователи не могли удалять или перемещать листы. Однако я все еще хотел бы иметь возможность скрывать и показывать листы, используя VBA. Есть ли способ добиться этого?

Ответы [ 2 ]

2 голосов
/ 20 января 2020

Вы можете снять защиту с рабочей книги, заняться своими делами и защитить книгу обратно:

ThisWorkbook.Unprotect Password:="your_password"
'[... do your stuff...]
ThisWorkbook.Protect Password:="your_password", Structure:=True
0 голосов
/ 20 января 2020

Используйте этот код, когда устанавливаете защиту.

Sheets("Sheet1").Protect Password:="myPassword", UserInterfaceOnly:=True

В результате пользователь не может изменить то, что вы не разрешили (в приведенном выше коде может быть больше, чем я показываю) здесь) в то время как свойство UserInterfaceOnly позволяет вашему коду действовать так, как будто никакой защиты не существует.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...