Всем привет.
Подскажите, пожалуйста, как сделать следующее:
нужно поставить защиту на изменение данных в листах книги,
но таким образом, что бы макросы могли менять данные, т.е. изменять значения закрытых ячеек, вставлять и удалять строки с листа, а пользователь не мог этого сделать. Скажите, может есть какой-то способ, что бы более не менее красиво решить эту проблему.
Спасибо.
Защита Excel листов
Модератор: Naeel Maqsudov
Есть один способ, необходимо использовать один из именованных аргументов метода .Protect, а именно UserInterfaceOnly
Вариант I. (расположите этот код в любом из стандартных модулей)
Вариант II. (этот код необходимо расположить только в модуле ThisWorkbook/ЭтаКнига)
Примечание :
Защитить рабочий лист и установить пароль лучше заранее, в таком случае макрос не будет содержать пароль в открытом виде.
Вариант I. (расположите этот код в любом из стандартных модулей)
Код: Выделить всё
Private Sub Auto_Open()
Worksheets(1).Protect UserInterfaceOnly:=True
End Sub
Код: Выделить всё
Private Sub Workbook_Open()
Worksheets(1).Protect UserInterfaceOnly:=True
End Sub
Защитить рабочий лист и установить пароль лучше заранее, в таком случае макрос не будет содержать пароль в открытом виде.
Большое спасибо, ваш совет очень помог.