Как определить, защищена ли книга Excel - PullRequest
4 голосов
/ 23 сентября 2008

Я могу использовать свойства листа Excel, чтобы узнать, защищен ли лист (Worksheet.Protection, Worksheet.ProtectContents и т. Д.).

Как узнать с помощью VBA, была ли защищена вся книга?

Ответы [ 2 ]

4 голосов
/ 23 сентября 2008

Сам нашел ответ:

Мне нужны свойства Workbook.ProtectStructure и Workbook.ProtectWindows.

2 голосов
/ 23 сентября 2008

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, если есть листы, которые не защищены. Я надеюсь, что это то, что вы искали.

...