Desproteger una hoja excel

Acabo de probar un código y me ha funcionado perfectamente para desproteger una hoja excel 2003.
Me ha gustado porque realmente no nos da la contraseña real, únicamente nos da una contraseña válida equivalente.

Procedimiento:
Copiamos el codigo que aparece más abajo y lo pegarmos en un módulo cualquiera del mismo libro, con ayuda del editor de Visual Basic (ALT+F11 para abrir el editor). Cerramos el editor, seleccionamos la hoja que queremos desproteger, y ejecutamos la macro llamada “breakit” (ALT+F8, para seleccionarla). Tras la ejecución (puede tardar unos segundos), un mensaje dará un password equivalente, y la hoja ya estará desprotegida.


Sub breakit()
Dim i As Integer, j As Integer, k As Integer
Dim 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 "Un password valido es " & 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

Acerca de Nimoy

Apasionado por la aplicación de las nuevas tecnologías a nuestra actividad diaria con el objetivo de facilitar nuestra eficiencia profesional y personal.

Publicado el 22 octubre, 2009 en pc. Añade a favoritos el enlace permanente. Comentarios desactivados en Desproteger una hoja excel.

Los comentarios están cerrados.

A %d blogueros les gusta esto: