Truco valido para ayudarnos con una Hoja de Excel protegida con contraseña (no de un libro). Válido en principio, para todas las versiones de Excel, aunque algunas personas indican que no les ha funcionado a todos al menos te ofrecemos 3 formas que hemos comprobado que aun funcionan.
Truco 1, para desproteger Hojas de Excel
Este truco es para las últimas versiones de Excel, lo he probado con las versiones de la 2016 en adelante. Y deberías probar desde un inicio esta opción.
Lo que debes hacer es:
- Renombar el archivo de la extensión .xlsx a .zip
- Descomprimir el .zip en una carpeta con el mismo nombre. Aunque no lo creas se va a descomprimir en archivos y carpetas.
- En la estructura, busca la carpeta «xl» y adentro la carpeta «worksheets«, ahí encontrarás un archivo XML por cada hoja que tenga el libro de excel.
- Abres el archivo con el Bloc de Notas y buscas en el texto: «sheetProtection», ahí vas a encontrar los siguientes 3 fragmentos de texto: sheet=»1″ objects=»1″ scenarios=»1″. En los 3 cambiamos el 1 por un cero (0) y guardamos.
- Comprimimos todo nuevamente y renombramos el .zip a un .xlsx.
- Abrimos el archivo y voila!
Truco 2, Quitar la protección de una Hoja de Excel con Google Drive
Todo lo que tenemos que hacer es subir el archivo a Google drive, abrirlo con Google Sheets y luego
descargarlo nuevamente el archivo en la computadora.
Si deseas mantener intacta la versión original del archivo (el que esta protegido), guárdalo con un nombre nuevo al momento de descargar el archivo.
Truco 3, Quitar la contraseña que protege una hoja de cálculo con VBA
NOTA: Esta opción esta comprobada con Excel 2010 y todas las versiones anteriores.
Pasos a seguir:
- Crea un fichero nuevo de Excel (ej: Libro1.xls).
- Pulsa Alt y F11, para entrar en el proyecto VBA (Visual Basic para Aplicaciones).
- En el menu de opciones, selecciona «Insertar». Selecciona a continuación «Modulo».
- En la parte izquierda, donde se observa el Proyecto, se habrá creado una carpeta llamada «Modulos», y dentro de ella, figurara «Modulo1».
- Nos situaremos en la ventana de la derecha al cliquear sobre de ese «Modulo1», y copiaremos este código:
Sub Descubrir_contraseña() Dim a As Integer, b As Integer, c As Integer Dim d As Integer, e As Integer, f As Integer Dim a1 As Integer, a2 As Integer, a3 As Integer Dim a4 As Integer, a5 As Integer, a6 As Integer On Error Resume Next 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 a1 = 65 To 66 For a2 = 65 To 66: For a3 = 65 To 66: For a4 = 65 To 66 For a5 = 65 To 66: For a6 = 65 To 66: For f = 32 To 126 Contraseña = Chr(a) & Chr(b) & Chr(c) & Chr(d) & Chr(e) & Chr(a1) _ & Chr(a2) & Chr(a3) & Chr(a4) & Chr(a5) & Chr(a6) & Chr(f) ActiveSheet.Unprotect Contraseña If ActiveSheet.ProtectContents = False Then MsgBox "¡Enorabuena!" & vbCr & "La contraseña es:" & vbCr & Contraseña Exit Sub End If Next: Next: Next: Next: Next: Next Next: Next: Next: Next: Next: Next End Sub
- A continuación, una vez hayamos pegado ese código, seleccionaremos en el menú de opciones, «Archivo», y a continuación «Exportar archivo». Le pondremos de nombre Descubrir_contraseña.bas (por ejemplo, aunque puede ser otra, ya que no tiene porque tener el mismo nombre que el procedimiento cuyo código aparece en el punto 5 anterior), y lo guardaremos por ejemplo, en «Mis documentos».
- Ahora imaginemos que tenemos una hoja de calculo protegida, y que queremos descubrir su contraseña . Para poder saber cual es su contraseña , tendremos que acceder al proyecto (Alt F11), e importar el modulo (.bas) anterior. Para ello, desde el menú de opciones, seleccionamos «Archivo», y a continuación «Importar archivo». Buscamos la ruta donde habíamos guardado el fichero del punto 6 anterior, y lo seleccionamos. Salimos ahora del proyecto VBA, para volver a la hoja de calculo protegida.
- Con la hoja de cálculo cuya contraseña deseamos descubrir, en primer plano (activa), seleccionamos desde Excel (no desde VBA, aunque también se puede hacer, pero lo haremos de la forma mas gráfica y sencilla posible), en el menu de opciones «Herramientas». A continuación, seleccionamos «Macro» y luego «Macros…» (si quieres ahorrarte eso, pulsad Alt + F8). En la lista de macros, seleccionamos el que se llama «Descubrir_contraseña», y pulsamos el botón «Ejecutar».
- En ese momento, comienza el procedimiento para obtener la contraseña de la hoja. El proceso puede tardar desde unos cuantos segundos, hasta algo mas de un minuto (o incluso varios minutos). No os preocupeis, que el sistema no ha entrado en un bucle infinito , tan solo hay que tener un poco de paciencia.
- Para finalizar, el sistema nos mostrara un mensaje, diciendonos cual era la contraseña de la hoja, a la vez que la misma se desprotege. Puede que esa contraseña no sea literalmente la que puso el autor de la hoja que hasta hace unos segundos estaba protegida, pero tanto la contraseña original, como esta nueva que el sistema nos da, son equivalentes. Por ejemplo, si tenemos una hoja protegida con la contraseña «pepe», la podemos desproteger con esa contraseña , o con este que es el que obtenemos al ejecutar ese macro: «AAABBABBBAA/». Podéis probar que tras proteger una hoja con la contraseña «pepe», ésta se puede desproteger con la contraseña «pepe» (evidentemente), y también con la contraseña «AAABBABBBAA/».
Si tienes un archivo de Excel 2013 o anterior y ninguno de estos trucos te funciona, puedes abrirlo con un Excel 2016 o superior y guardarlo de nuevo. De esta manera aplicar el primer truco!