Macro Excel para desproteger una hoja de cálculo
Les ha pasado alguna vez que reciben una hoja de excel protegida y no saben como modificarla? Existe una manera de desbloquearla con una macro sencilla que se basea en el método de fuerza bruta. Solo necesita ingresar al editor de visual basic (Alt + F11) e insertar el siguiente código:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
Sub DESPROTEGER() Dim I 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 "Ok" Exit Sub End If Next Next Next Next Next Next Next Next Next Next Next Next End Sub |
Finalmente debe llamar (ejecutar) la macro Unprotect desde la hoja que quiere desproteger y listo.
Atención: Este método es efectivo, sin embargo tiene un inconveniente y es que si bien permite desbloquear la hoja, no permite conocer el código para luego bloquearla en su estado original. Vale la pena saber esto antes de ejecutarlo.