Come sapere se una cartella di lavoro di Excel è protetta
-
02-07-2019 - |
Domanda
Posso usare le proprietà di un foglio di lavoro di Excel per sapere se il foglio di lavoro è protetto (Worksheet.Protection, Worksheet.ProtectContents ecc.)
Come posso sapere usando VBA se l'intera cartella di lavoro è stata protetta?
Soluzione
Ho trovato la risposta da solo:
Ho bisogno delle proprietà Workbook.ProtectStructure
e Workbook.ProtectWindows
.
Altri suggerimenti
Worksheet.ProtectedContents è ciò che dovresti usare, su ogni foglio di lavoro.
Quindi vorrei impostare un ciclo come questo:
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
La funzione restituirà True se ogni foglio di lavoro è protetto e False se ci sono fogli di lavoro non protetti. Spero che questo sia quello che stavi cercando.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow