Código VBA para tirar proteção de planilha Excel

Código VBA para tirar proteção de planilha Excel, TECNOFAGIA

Sabe quando você protege uma planilha Excel com senha para que o conteúdo das células não seja alterado e depois esquece a senha? Veja no artigo de hoje um trecho de código em VBA que você pode usar para desbloquear sua planilha rapidamente.

Já tentou desbloquear uma planilha e recebeu a mensagem abaixo?

Código VBA para tirar proteção de planilha Excel, TECNOFAGIA

Se você esqueceu a senha, faça o seguinte:

  1. Pressione ALT+F11 para abrir o editor de macros VBA
  2. Nesta nova janela, clique no menu Inserir e escolha Módulo
  3. Cole o código abaixo inteiro no Módulo que foi criado
  4. Pressione a tecla F5 e aguarde a mensagem de conclusão

Quando a mensagem a seguir for exibida, sua planilha foi desbloqueada:

Código VBA para tirar proteção de planilha Excel, TECNOFAGIA

Código VBA para desbloquear planilha:

Public Sub PasswordBreaker()
    Dim i As Integer, j As Integer, k As Integer
    Dim l As Integer, m As Integer, n As Integer
    Dim i1 As Integer, i2 As Integer, i3 As Integer
    Dim i4 As Integer, i5 As Integer, i6 As Integer
    Dim Contador, ContaSheets As Integer
    On Error Resume Next
    ContaSheets = Worksheets.Count
    For Contador = 1 To ContaSheets
    Sheets(Contador).Activate
    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)
    
    Next: Next: Next: Next: Next: Next
    Next: Next: Next: Next: Next: Next
    
    If ActiveSheet.ProtectContents = False Then
        Debug.Print "Senha aceita na Sheet " & Contador & ": " & Chr(i) & Chr(j) & _
            Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
            Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
    End If
    
    Next
MsgBox "Desbloqueio executado com sucesso.", vbInformation, "Excel Password Breaker"
End Sub