Страница 1 из 1

Защита Excel листов

Добавлено: 09 июл 2005, 13:29
F@n
Всем привет.
Подскажите, пожалуйста, как сделать следующее:
нужно поставить защиту на изменение данных в листах книги,
но таким образом, что бы макросы могли менять данные, т.е. изменять значения закрытых ячеек, вставлять и удалять строки с листа, а пользователь не мог этого сделать. Скажите, может есть какой-то способ, что бы более не менее красиво решить эту проблему.
Спасибо.

Добавлено: 09 июл 2005, 13:48
pashulka
Есть один способ, необходимо использовать один из именованных аргументов метода .Protect, а именно UserInterfaceOnly

Вариант I. (расположите этот код в любом из стандартных модулей)

Код: Выделить всё

Private Sub Auto_Open()
Worksheets(1).Protect UserInterfaceOnly:=True
End Sub
Вариант II. (этот код необходимо расположить только в модуле ThisWorkbook/ЭтаКнига)

Код: Выделить всё

Private Sub Workbook_Open()
Worksheets(1).Protect UserInterfaceOnly:=True
End Sub
Примечание :
Защитить рабочий лист и установить пароль лучше заранее, в таком случае макрос не будет содержать пароль в открытом виде.

Добавлено: 09 июл 2005, 15:29
F@n
Большое спасибо, ваш совет очень помог.