¿No te ha ocurrido alguna vez que necesitas cambiar un formato en un archivo excel y justo esa hoja está protegida con clave?

¿O quizá tu mismo en algún momento le pusiste clave, pero no la recuerdas?

Para solucionar esto hay varias formas, entre ellas, softwares que te permiten acabar con la contraseña por "fuerza bruta", es decir, que prueba una y otra vez varias contraseñas en una lista predeterminada hasta que una de ellas coincida. este trabajo es laborioso
dependiendo de los bits de la contraseña... puede durar desde horas a días, y aún así el éxito no está asegurado.

Otra forma de solucionar el problema (en este caso sólo si se trata de una hoja, y no de una contraseña del libro completo) es utilizar un código que se implenta como macro, la que al ejecutarse logra darte una contraseña que logrará abrir la hoja y desbloquearla
completamente. No te dirá la contraseña original, pero al menos podrás abrir el archivo. No pasará inadvertido si lo que quieres es devolver el archivo intacto, porque estará desprotegido, pero puedes jugarle una buena broma a alguien cambiando de ahí en adelante la contraseña a una que tu pongas.

Si es tucaso, sigue las siguientes instrucciones:

Paso 1: Abrir el archivo de MS Excel en la hoja protegida con contraseña. Si tratamos de modificar alguna de las características bloqueadas, saladrá esto:


Sacar contraseña a una hoja Excel


Paso 2: Abrir el editor de Visual Basic, en el menú Herramientas > Macro > Editor de Visual Basic.

Paso 3: Seleccionar en el editor la hoja a desproteger (con doble click) y pegar el código siguiente (Todo lo que está en verde):


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


Paso 4:Luego ir al menú Archivo > Cerrar y volver a Microsoft Excel.

Paso 5: Ir a menú Herramientas > macro > Macros...

Paso 6: Ejecutar la Macro "Breakit" que aparecerá en la lista...

Paso 7: Saldrá un cuadro de diálogo con una contraseña válida, que si la ponemos cuando la solicite el archivo, desbloqueará la hoja (esto demora unos 10 segundos).

Con esto entramos al archivo, hacemos lo que nos parezca y luego podemos volver a bloquearlo con una nueva contraseña o dejarlo desprotegido.

Unos puntos no cuestan nada....
Agredecer, mucho menos.

Inokram