Saltar al contenido
PROGRAMAR EN VBA MACROS DE EXCEL

Recuperar Password o Contraseña de hoja bloqueada

En un anterior pos se había expuesto una macro que crea un formulario que solicita password de acceso, ahora voy a mostrar como recuperar un password o contraseña de una hoja bloqueada o desbloquear hoja de excel; en desbloquear un proyecto de VBA se expone como desbloquear o recuperar clave de proyecto de VBA; es muy normal que por una cuestión de privacidad o seguridad se bloqueen las hojas, ya sea para que no se puedan ingresar nuevos datos o para que no se eliminen accidental o intencionalmente fórmulas o formatos.

Sucede que en muchas ocasiones se nos olvida el password o clave, con el consiguiente problema que no podemos modificar la hoja, entonces tenemos que ingresar de nuevo los datos, las fórmulas y aplicar los formatos que teníamos antes a los fines de rehacer la hoja, a pesar que nos lleva el doble de trabajo, esto no es problema cuando se trata de hojas simples; pero que sucede con planillas complejas sería muy trabajoso volver a realizar la hoja nuevamente, para ello y dar una solución te muestro esta macro que recupera el password o contraseña de hojas bloqueadas o protegidas.

Antes de seguir con el desarrollo y en el caso que no tengas conocimiento suficiente sobre el manejo de hojas de Excel, te recomiendo antes de introducirte en el mundo de las macros, que leas un excelente libro sobre Excel el que te ayudará manejar las planillas de cálculo, debes hacer click acá, si quieres un libro sobre Excel, en inglés, entonces debes hacer click acá.

MASTERCARD PAYONEER

Este ejemplo de macro o procedimiento de VBA que recupera password funciona de una manera muy sencilla, desde el link del final se puede descargar el archivo de ejemplo, de esta manera podrás ver su funcionamiento en forma más detallada.

El código de VBA o Macro de Excel que recupera password de hoja bloqueada se debe ingresar en un módulo, posicionarse en la hoja bloqueada y ejecutar la macro; en este ejemplo la hoja1 se encuentra bloqueada con el clave«1234» si se intenta modificar sale un letrero que no se puede, porque se encuentra bloqueada, para desbloquearla hay que ingresar el password, si no se recuerda el contraseña se tiene un problema que con esta macro se soluciona, lo que se debe hacer es ejecutar la macro denominada «DesprotegerHoja», corriendo un código que determina un password alternativo y por ende desbloquea la hoja dejando de esta manera la hoja de Excel accesible como si no tuviera clave, en otras palabras elimina la clave.

En el caso que seas principiante en el tema de las macros, lo que debes hacer es presiona Alt + F11, con ello se inicia el Editor de Visual Basic; posteriormente se debe insertar un módulo y pegar el código que se encuentra más abajo o en el archivo de ejemplo que descargues de esta página; luego te posicionas en la hoja que deseas desbloquear y ejecutas la macro.

La macro la puedes correr desde la ficha programador, seguidamente haz click en menú y luego en macros; o desde el Editor de Visual Basic; seleccionas el módulo donde esta el código de VBA, luego debes seleccionar la macro «DesprotegerHoja», según se muestra en la imagen;

Si no tienes habilitado la ficha programador en Excel, debes hacerlo desde «Archivo», luego «Opciones de Excel», posteriormente seleccionar «Personalizar cinta de Opciones» y tildar el menú programador en la parte derecha del formulario (ver la imagen anterior); luego de estos pasos quedará habilitado el menú programador pudiendo ejecutar macros desde dicho menú, para este caso seleccionar la macro «DesprotegerHoja».

Básicamente esta macro recupera el password, clave o contraseña de una hoja bloqueada, o desbloquear hoja de excel, como prefieras denominarlo; en otras palabras determina una clave alternativa y con ella desbloquea la hoja solucionando el problema del olvido de la clave de desbloqueo de la hoja de Excel. En el link del final podrás descargar el ejemplo y adaptarlo a lo que necesites.

Este código se debe usar con cuidado, en el sentido de que no está hecho para violar archivos sobre los cuales no se tiene el derecho de uso o propiedad del mismo, el fin de este código es poder desbloquear hojas de las cuales no recordamos la contraseña, password o clave de hojas de archivos o ficheros de los cuales tengamos el derecho de autor o uso de los mismos.

Código que se inserta en un módulo

Sub DesprotegerHoja()
On Error Resume Next
Dim a, b, c, d, e, f, g, h, i, j, k, l As Integer
Dim freepass
For a = 65 To 66: For b = 65 To 66: For c = 65 To 66
For d = 65 To 66: For e = 65 To 66: For f = 65 To 66
For g = 65 To 66: For h = 65 To 66: For i = 65 To 66
For j = 65 To 66: For k = 65 To 66: For l = 32 To 126

freepass = Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(f) _
& Chr(g) & Chr(h) & Chr(i) & Chr(j) & Chr(k) & Chr(l)
ActiveSheet.Unprotect freepass

    

If ActiveSheet.ProtectContents = False Then
MsgBox «Su hoja fue desprotegida correcatamente, el password alternativo fue: » & freepass, vbInformation, «****FREEPASS http://programarexcel.com****»
Exit Sub
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next

End Sub

Si te fue de utilidad puedes INVITARME UN CAFÉ y de esta manera ayudar a seguir manteniendo la página, CLICK para descargar en ejemplo en forma gratuita.


.

If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.

Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends