Está en la página 1de 8

¿Tiene un proyecto 

VBA de Excel que está protegido con contraseña? Así es


cómo puede desbloquearlo y recuperar la contraseña.

No es inusual olvidar la contraseña de un documento en VBA de Excel


ni tampoco tomar posesión del documento de otra persona. Por lo general,
suele causar algunos dolores de cabeza. Pero aquí le traigo una solución.

1. ¿Qué es VBA en Excel?

VBA (Visual Basic para Aplicaciones) es el lenguaje de programación de Excel y


otros programas de Office. VBA funciona mediante la ejecución de macros, una
serie de instrucciones paso a paso escritos en Visual Basic.

Supongo que si has llegado a esta publicación es porque sabes lo que es y


seguramente lo utilizas. Bien, a veces sucede que buscamos documentos en
internet, por ejemplo, una búsqueda:

project vba filetype:xlsm

y encontramos uno de interés, pero está protegido por contraseña. ¿Que pasa
ahora? Bueno, no es demasiado difícil eliminar la protección por completo.  A
continuación, veamos cómo hacerlo.

2. Cómo configurar una contraseña VBA de Excel

Si tiene que descifrar una contraseña, es posible que sea consciente de cómo
configurar o crear una. Veamos cómo hacerlo con un ejemplo sencillo (además
por que lo necesitaremos para más adelante).

 Vaya a la pestaña Desarrollador en Excel y haga clic en Macros.


Desarrollador – Macros en Excel

 En caso de que no ve la ficha Desarrollador, vaya a Archivo > Opciones y


luego Personalizar cinta de opciones. Ahora mueva el
grupo Desarrollador del panel de la mano izquierda a la derecha. (Y si ya
se ubica en la derecha, activar el casillero)

Personalizar Cinta Opciones – Desarrollador

 Una vez que ha seleccionado macros en la pestaña Desarrollador ,


introduzca un nombre para la macro (es sólo un ejemplo, por lo que los
detalles no importan) y haga clic en Crear.
Crear Macros en Excel

 Copie y pegue el siguiente código en el Editor de Visual Basic. Esta es


una macro simple que entrará en el texto citado en la celda A1. No sirve
a ningún propósito real, pero necesitamos algo para proteger con una
contraseña.

Range("A1").Value = "Protegido con Protected"

Edit
or de Visual Basic

 En el Editor de Visual Basic, vaya a Herramientas > Propiedades


VBAProject. Y en la pestaña de Protección podrás establecer una
contraseña. También tendrá que activar la casilla Bloquear proyecto
para visualización.
VBA Project

 Haga clic en Aceptar, asegúrese de guardar el documento como un


archivo de Excel con extensión XLSM, y probemos si nuestra contraseña
funciona. Cierre el documento y volver a abrirlo, y luego ir a la
pestaña Desarrollador y haga clic en Visual Basic.

VBA Project Contraseña

Al intentar acceder al VBAProject, verá un mensaje de contraseña. Ahora


pasemos a encontrar la manera de quitar o eliminar este tipo de protección.

Uno tendría que pensar dos veces acerca de lo seguro que son las hojas de
cálculo en realidad.
3. Cómo Desbloquear Proyectos VBA de Excel

Así es como se puede desproteger un VBA Project de Excel con contraseña:

Esta parte es realmente muy simple una vez que sepas lo que estás haciendo.
Primero, vamos a necesitar descargar un editor hexadecimal. Si usted no tiene
uno, HxD es una buena opción libre, pero hay un montón de alternativas
disponibles.

3.1. Preparando nuestro archivo XLSM

Nuestro proceso difiere ligeramente dependiendo de si estamos rompiendo una


contraseña en un antiguo archivo XLS o un archivo XLSM más reciente. Si tiene
oportunidad de abrir un XLS, entones guárdelo nuevamente como un XLSM.

 Buscar en su disco duro el archivo VBA de Excel que desea quitar la


contraseña, a continuación, cambie la extensión XLSM por ZIP.
 Posteriormente, abrir el archivo (con la nueva extensión) con software de
compresión de archivos como WinRAR o 7-Zip. Usted debe encontrar
una carpeta llamada xl .

Carpeta XL
 Dentro de esta carpeta, usted encontrará un archivo con el nombre
vbaProject.bin.
 Abra el archivo BIN con su editor hexadecimal.

3.2 Deshabilitando  contraseña de un VBA Project

Aquí es donde ser capaz de configurar una contraseña es muy útil. Cree un
documento ficticio de Excel, agregue una macro a él y establezca una
contraseña como se describe al principio de este artículo. A continuación,
vamos a tomar el código hexadecimal que estipula qué es la contraseña, y lo
insertaremos en el archivo al que queremos acceder.

Una vez que haya configurado el archivo, guárdelo y realice el mismo proceso
que hicimos hace unos instantes para que acabe con otro
archivo vbaProject.bin. Asegúrese de recordar la contraseña creada!

 Ahora debe tener ambos archivos vbaProject.bin abiertos en su Editor


Hexadecimal. No los mezclen o vamos a tener grandes problemas.
 Utilice Ctrl + F en el archivo que creó para encontrar la siguiente cadena:

CMG=

 Lo anterior es el comienzo del código que estipula la contraseña actual.


Necesitamos copiar y pegar tres valores:

CMG=
DPB=
GC=

 A continuación puede ver cómo lo hice.


HxD Password Macros VBA

 Transfiera este código a su otro archivo vbaProject.bin y colóquelo en la


posición correspondiente, asegurándose de no borrar nada más. Guarde
su archivo hexadecimal editado.
 Sólo queda cambiar nuevamente la extensión del archivo ZIP a XLMS.

Abra el archivo VBA Excel. Vaya a la pestaña Desarrollador y haga clic en Visual
Basic e intente acceder al menú Proyecto. Debería ver la solicitud de contraseña,
y con suerte, la contraseña correcta debería ser la que establecemos en nuestro
documento ficticio.

Desblo
queando VBA Project de Excel

¡El proyecto VBA ha sido desprotegido! Ahora usted puede continuar con lo que
estaba destinado a hacer.
4. Vídeo Demostración

En este vídeo hemos aplicado los pasos anteriormente mencionados. Así es


cómo usted puede desbloquear la protección de un Proyecto VBA de Excel.

5. Notas Finales sobre la seguridad del VBA Macros

Este truco puede ser muy útil cuando uno necesita necesita desesperadamente
el acceso a una contraseña protegida  en VBA Macro. Sin embargo, también
debe ilustrar una falla de seguridad importante que está presente en Excel.

Si está utilizando este tipo de protección por contraseña para defender su


código VBA, sepa que hay una solución.

¿Tiene alguna duda sobre el tema de un Proyecto VBA? o, ¿tiene un consejo de


seguridad que desea compartir con otros? Agradezco su comentario.

También podría gustarte