Поделиться через


Практическое руководство. Программная защита листов Excel

Функция защиты в Microsoft Office Excel помогает предотвратить изменение объектов рабочего листа пользователями или кодом.При включении защиты по умолчанию блокируются все ячейки.

Применение. Сведения этого раздела применяются к проектам уровня документа и уровня приложения для Excel 2013 и Excel 2010. Дополнительные сведения см. в разделе Доступность функций по типам приложений Office и проектов.

В настройках уровня документа можно защитить листы с помощью конструктора Excel.В проекте любого типа лист также можно защитить программными средствами во время выполнения.

ПримечаниеПримечание

В защищенные области рабочего листа нельзя добавлять элементы управления Windows Forms.

Использование конструктора

Защита рабочего листа в конструкторе

  • На вкладке Рецензирование в группе Изменения щелкните Защитить лист.

    Откроется диалоговое окно Защитить лист.Можно задать пароль и дополнительно указать определенные действия, которые пользователям разрешено выполнять с данным рабочим листом, например форматирование ячеек или добавление строк.

Кроме того, пользователям можно разрешить редактировать определенные диапазоны защищенных рабочих листов.

Разрешение редактирования в определенных диапазонах

  • При использовании Excel 2007 в группе Изменения вкладки Рецензирование щелкните Разрешить пользователям изменять диапазоны.

    Откроется диалоговое окно Разрешить пользователям изменять диапазоны.Можно указать диапазоны, для разблокирования которых используется пароль, а также пользователей, которым разрешено редактировать диапазоны без ввода пароля.

Использование кода во время выполнения

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

Защита листа с помощью кода в настройке уровня документа

  • Следует вызвать метод Protect рабочего листа.В этом примере предполагается, что используется лист с именем Sheet1.

    Globals.Sheet1.Protect(getPasswordFromUser, AllowSorting:=True)
    
    Globals.Sheet1.Protect(getPasswordFromUser, true);
    

Защита листа с помощью кода в надстройке уровня приложения

  • Следует вызвать метод _Worksheet.Protect активного рабочего листа.

    CType(Application.ActiveSheet, Excel.Worksheet).Protect(getPasswordFromUser, AllowSorting:=True)
    
    ((Excel.Worksheet)Application.ActiveSheet).Protect(getPasswordFromUser, true);
    

См. также

Задачи

Практическое руководство. Программное снятие защиты с листов

Практическое руководство. Программная защита книг Excel

Практическое руководство. Программное скрытие листов Excel

Основные понятия

Работа с листами

Общие сведения о ведущих элементах и элементах управления ведущего приложения

Ведущие элементы листа

Глобальный доступ к объектам в проектах Office

Необязательные параметры в решениях Office