Pregunta

Puedo usar las propiedades de una hoja de cálculo de Excel para saber si la hoja de cálculo está protegida (Worksheet.Protection, Worksheet.ProtectContents, etc.).

¿Cómo puedo saber usando VBA si todo el libro ha sido protegido?

¿Fue útil?

Solución

Encontré la respuesta yo mismo:

Necesito el Workbook.ProtectStructure y Workbook.ProtectWindows propiedades.

Otros consejos

Worksheet.ProtectedContents es lo que necesitaría usar en cada hoja de trabajo.

Entonces configuraría un bucle como este:

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 función devolverá Verdadero si todas las hojas de trabajo están protegidas y Falso si hay hojas de trabajo no protegidas.Espero que esto sea lo que estabas buscando.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top