Как определить, защищена ли книга Excel
-
02-07-2019 - |
Вопрос
Я могу использовать свойства листа Excel, чтобы определить, защищен ли лист (Worksheet.Protection, Worksheet.ProtectContents и т. д.).
Как с помощью VBA узнать, защищена ли вся книга?
Решение
Ответ нашел сам:
мне нужно Workbook.ProtectStructure
и Workbook.ProtectWindows
характеристики.
Другие советы
Worksheet.ProtectedContents — это то, что вам нужно будет использовать на каждом листе.
Поэтому я бы создал такой цикл:
Public Function wbAllSheetsProtected(wbTarget As Workbook) As Boolean
Dim ws As Worksheet
wbAllSheetsProtected = True
For Each ws In wbTarget.Worksheets
If ws.ProtectContents = False Then
wbAllProtected = False
Exit Function
End If
Next ws
End Function
Функция вернет True, если каждый лист защищен, и False, если есть незащищенные листы.Надеюсь, это то, что вы искали.
Не связан с StackOverflow