Desproteger Todas as Planilhas de um Documento Excel

Objetivo: Realizar a desproteção de todas as planilhas ativas de um arquivo Excel de uma vez só. Há um outro arquivo no site de como desproteger uma planilha de cada vez. Este artigo demonstra um código VBA para desabilitar todas as planilhas de uma só vez.

Ás vezes é necessário alterar uma planilha antiga, o problema é que você perdeu a senha dela. Para resolver este problema eu localizei na internet o código abaixo que pode ser muito útil para tirar a proteção do Excel nas suas planilhas. Como tirar a senha da planilha:

  • Clique na aba Desenvolvedor e no botão Visual Basic
  • Na guia de projetos á esquerda localize o projeto VBAProject(PERSONAL.XLSB)
  • Clique na pasta módulos deste projeto, e abra um dos módulos
  • No final dos códigos que existem lá, cole o código abaixo
Public Sub lsDesbloquearTodasPlanilhas()

    Dim lQtdePlan As Integer
    Dim lPlanAtual As Integer

    'Inicia as variáveis
    lQtdePlan = Worksheets.Count
    lPlanAtual = 1

    'Loop pelas planilhas
    While lPlanAtual <= lQtdePlan
        Worksheets(lPlanAtual).Activate

        DesprotegerPlanilhaAtivaB

        lPlanAtual = lPlanAtual + 1
    Wend

    MsgBox "Planilhas desprotegidas!"
End Sub

'Desproteger Planilha
Sub DesprotegerPlanilhaAtivaB()

Dim i, i1, i2, i3, i4, i5, i6 As Integer, j As Integer, k As Integer, l As Integer, m As Integer, n As Integer
On Error Resume Next
For i = 65 To 66
For j = 65 To 66
For k = 65 To 66
For l = 65 To 66
For m = 65 To 66
For i1 = 65 To 66
For i2 = 65 To 66
For i3 = 65 To 66
For i4 = 65 To 66
For i5 = 65 To 66
For i6 = 65 To 66
For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If ActiveSheet.ProtectContents = False Then
'    MsgBox "One usable password is " & Chr(i) & Chr(j) & _
'    Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
'    Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
    Exit Sub
End If
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
Next
End Sub

  • Clique na guia Desenvolvedor
  • Clique no botão macros e selecione PERSONAL.XLSB!lsDesbloquearTodasPlanilhas.
  • Clique em executar.

Pronto! O resultado pode demorar um pouco para aparecer, mas todas as planilhas do arquivo Excel aberto serão desbloqueadas.

Abraço

Marcos Rieper


Marcos Rieper

Pai, marido, professor e consultor em Excel.

Obrigado por ler este artigo, este blog foi criado para difundir o conhecimento em Excel à todos.

Divulgamos novos artigos nas redes sociais, basta clicar nos ícones abaixo.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel