Восстановить защиту листа после сохранения и закрытия

1

В настоящее время у меня есть код VBA, который автоматически снимает защиту всех листов в моем файле Excel 2016 по имени пользователя. enter image description here

В настоящее время, когда я открываю файл, он запрашивает пароль. Я не хочу, чтобы это запрашивало пароль, я просто хочу снять защиту с ВСЕХ листов, если имя пользователя человека, открывающего его, совпадает с тем, что будет в коде.

Скажем, я уполномочен вносить изменения в рабочую книгу и открываю ее, и ВСЕ листы не защищены. Я делаю некоторые изменения, но хочу автоматически восстановить защиту, которую я настроил на каждом листе, так как я сохраняю внесенные изменения.

Конечный пользователь, который будет заполнять рабочие листы, не имеет права что-либо менять, открывает файл и все средства защиты, которые я настроил, на месте и активны. В настоящее время я использую этот код, но он не работает.

 Private Sub Workbook_BeforeClose(Cancel As Boolean)
      Sheets("ADD-EXTEND").Protect Password:="SPAR"
      ActiveWorkbook.Save
 End Sub

Постскриптум Эта подпункт ниже кода для разблокировки листов в ThisWorkbook?

R.Conklin
источник

Ответы:

0

Скриншота ниже должно быть достаточно, чтобы начать, это довольно очевидно:

excel_protect_worksheet_on_close

misha256
источник
Просто для ясности, если бы у меня было несколько листов, я бы заменил sheet1 на имя моего листа и заменил "qwerty123" своим паролем? Тогда повторить этот код для всех моих листов? Или есть способ в корпоративных ВСЕХ моих листов в одной строке кода?
R.Conklin
Я не смог заставить этот код работать.
R.Conklin
Вопрос был обновлен.
R.Conklin