Pergunta

Eu posso usar as propriedades de uma planilha do Excel para dizer se a planilha está protegida (Worksheet.Protection, Worksheet.ProtectContents etc).

Como posso saber usando VBA se toda a pasta de trabalho foi protegida?

Foi útil?

Solução

Encontrou a resposta me:

Eu preciso das propriedades Workbook.ProtectStructure e Workbook.ProtectWindows.

Outras dicas

Worksheet.ProtectedContents é o que você precisa usar, em cada planilha.

Assim, gostaria de configurar um loop 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

A função retornará True se cada planilha está protegida, e False se existem planilhas não protegidas. Espero que este é o que você estava procurando.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top