Как проверить, защищён ли лист или книга в Excel?
Хотите узнать, защищён ли конкретный лист или книга в Excel? Эта статья поможет вам это выяснить.
Проверка защиты листа с помощью кода VBA
Проверка защиты книги с помощью кода VBA
Проверка защиты листа с помощью кода VBA
Следующий код VBA поможет вам быстро определить, какие листы в текущей книге защищены, а какие — нет. Выполните следующие действия.
1. Нажмите одновременно клавиши Alt+F11, чтобы открыть окно Microsoft Visual Basic для приложений.
2. В окне Microsoft Visual Basic для приложений выберите Вставка > Модуль. Затем скопируйте и вставьте приведённый ниже код VBA в окно кода.
Код VBA: Проверка, защищён ли лист
Sub GetProtectedSheets()
Dim sh As Worksheet
Dim xSaveSht As Worksheet
Dim xSaveToRg As Range
Dim xSaveToRg1 As Range
Dim xTxt As String
On Error Resume Next
xTxt = ActiveWindow.RangeSelection.Address
Set xSaveToRg = Application.InputBox("Please select a cell for saving the checking result:", "Kutools for Excel", xTxt, , , , , 8)
If xSaveToRg Is Nothing Then Exit Sub
If xSaveToRg.Worksheet.ProtectContents Then
If MsgBox("This worksheet is protected, would you like to create a new sheet to save the checking result?", vbInformation + vbYesNo, "Kutools for Excel") = vbYes Then
Set xSaveSht = ThisWorkbook.Worksheets.Add
Set xSaveToRg = xSaveSht.Cells(1)
Else
Exit Sub
End If
End If
Set xSaveToRg = xSaveToRg.Cells(1)
Set xSaveToRg1 = xSaveToRg.Offset(0, 1)
xSaveToRg.Value = "Protected worksheet"
xSaveToRg1.Value = "Unprotected worksheet"
Set xSaveToRg = xSaveToRg.Offset(1)
Set xSaveToRg1 = xSaveToRg1.Offset(1)
For Each sh In Worksheets
If sh.Name <> xSaveSht.Name Then
If sh.ProtectContents Then
xSaveToRg.Value = sh.Name
Set xSaveToRg = xSaveToRg.Offset(1)
Else
xSaveToRg1.Value = sh.Name
Set xSaveToRg1 = xSaveToRg1.Offset(1)
End If
End If
Next
End Sub 3. Нажмите клавишу F5, чтобы запустить код. После этого откроется диалоговое окно Kutools для Excel. Выберите ячейку для размещения результатов проверки и нажмите кнопку ОК.

Примечания:
1. Если выбранная ячейка находится на защищённом листе, появится ещё одно диалоговое окно Kutools для Excel. Нажмите кнопку ОК, и результат проверки будет сохранён на новом созданном листе.

2. Если выбранная ячейка находится на незащищённом листе, результат проверки сразу появится в поле «Выберите диапазон».
Результат проверки показан на снимке экрана ниже:

Проверка защиты книги с помощью кода VBA
Вы также можете воспользоваться кодом VBA, чтобы проверить, защищена ли текущая книга. Выполните следующие действия.
1. Нажмите Alt+F11, чтобы открыть окно Microsoft Visual Basic для приложений.
2. В окне Microsoft Visual Basic для приложений выберите Вставка > Модуль. Затем скопируйте и вставьте приведённый ниже код VBA в окно кода.
Код VBA: Проверка, защищена ли книга
Sub IsWorkbookProtected()
With ActiveWorkbook
If .ProtectWindows Or .ProtectStructure Then
MsgBox "This workbook is password protected"
Else
MsgBox "This workbook is not password protected"
End If
End With
End Sub 3. Нажмите клавишу F5, чтобы запустить код.
В зависимости от вашей книги откроется одно из следующих диалоговых окон.

Легко защищайте или снимайте защиту с нескольких листов в книге одновременно в Excel:
Служебные функции Kutools для Excel — «Защита листа» и «Снятие защиты с листа» — позволяют легко защищать или снимать защиту сразу с нескольких листов в текущей книге Excel. См. снимок экрана ниже:

Kutools для Excel— раскройте весь потенциал Excel с помощью более чем 300 незаменимых инструментов, которые ускоряют и упрощают вашу работу, а также воспользуйтесь возможностями ИИ для более разумной обработки данных и повышения продуктивности.Получить сейчас
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек