Una macro para desproteger una hoja de Excel con VBA es útil cuando el archivo es tuyo, la hoja está protegida para evitar cambios accidentales y conoces la contraseña. Al terminar, tendrás una hoja Ventas preparada en un libro .xlsm y una macro que quita su protección con Unprotect.
La idea no es descifrar el archivo ni abrir un libro protegido para editarlo. Excel mantiene esa diferencia entre la protección de una hoja y el cifrado de apertura.
Qué puede y qué no puede hacer una macro de protección
Imagina que tienes un libro de ventas. La hoja Ventas contiene estas seis filas:
| A | B | C | |
|---|---|---|---|
| 1 | Producto | Precio | Cantidad |
| 2 | Lapiz | 1,50 | 10 |
| 3 | Cuaderno | 3,20 | 5 |
| 4 | Goma | 0,80 | 12 |
| 5 | Bolígrafo | 1,10 | 8 |
| 6 | Folder | 2,50 | 6 |
Al protegerla, las celdas quedan bloqueadas para evitar que alguien borre o cambie accidentalmente los datos. Una macro puede ejecutar Unprotect para quitar esa protección cuando conoce la contraseña y tiene permiso para modificar el archivo.
La macro no puede:
- Descifrar un libro protegido mediante contraseña de apertura.
- Convertir una hoja protegida en editable sin autorización.
- Adivinar de forma fiable cualquier contraseña, especialmente si es larga o compleja.
- Sustituir una copia de seguridad.
- Eliminar la protección interna de un archivo que no le pertenece.
En este tutorial usaremos la contraseña conocida Ventas2026 y una copia autorizada del libro.
La diferencia entre proteger una hoja y cifrar un libro
Son dos controles distintos:
- Proteger hoja: limita cambios en las celdas de una hoja. Se usa para reducir errores de edición.
- Cifrar con contraseña: impide abrir el archivo hasta introducir la contraseña.
La protección de hoja se gestiona desde esta ruta:
Para quitarla, vuelve a la misma sección y utiliza Desproteger hoja si conoces la clave.
El cifrado de apertura está en otra ruta:
No es lo mismo. Una macro que llama a Unprotect puede actuar sobre una hoja protegida, pero no elimina el cifrado que impide abrir el libro.
| Control | Qué protege | ¿La macro VBA lo elimina? |
|---|---|---|
| Protección de hoja | Cambios accidentales en las celdas | Sí, con contraseña conocida |
| Cifrado de apertura | La apertura del libro | No |
Macros guardadas en .xlsx |
El código VBA no se conserva | Debes guardar como .xlsm |
Si necesitas una macro, guarda el libro como Libro de Excel habilitado para macros (.xlsm). Un .xlsx es el formato normal de un libro sin macros.
Cómo preparar el libro y abrir el editor de VBA
Para practicar con el mismo libro, añade una columna Observaciones y deja editables sus celdas antes de proteger la hoja. La tabla quedará así:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | Precio | Cantidad | Observaciones |
| 2 | Lapiz | 1,50 | 10 | Revisar stock |
| 3 | Cuaderno | 3,20 | 5 | Pedido 12 |
| 4 | Goma | 0,80 | 12 | Sin cambios |
| 5 | Bolígrafo | 1,10 | 8 | Reponer reponer |
| 6 | Folder | 2,50 | 6 | Guardar sobrio |
Sustituye el texto de ejemplo por estas observaciones:
- Lapiz:
Revisar stock - Cuaderno:
Pedido 12 - Goma:
Sin cambios - Bolígrafo:
Reponer - Folder:
Guardar
Ahora haz estos pasos:
- Selecciona
D2:D6. - Abre Ctrl+1.
- En Formato de celdas, ve a Protección.
- Desactiva Bloqueado.
- Acepta.
- Selecciona una celda cualquiera de la hoja.
- Abre
Revisar > Proteger > Proteger hoja. - Escribe
Ventas2026y acepta.
Guarda el libro como .xlsm:
- Pulsa F12 o abre Archivo > Guardar como.
- Elige un nombre, por ejemplo
Ventas_protegidas. - En Tipo, selecciona *Libro de Excel habilitado para macros (.xlsm)**.
- Guarda y acepta la advertencia deextension.
Después abre el editor de VBA con Alt+F11. En Windows, elige Insertar > Módulo. El módulo nuevo aparece dentro del proyecto del libro. En Mac, el atajo puede variar; también puedes abrir el editor desde las herramientas de desarrollo de Excel.
.xlsm, la hoja Ventas muestra los seis productos y el editor de VBA contiene un módulo vacío.Una macro VBA que elimina la protección de una hoja
En el módulo abierto, pega este código completo:
Sub DesprotegerVentas()
On Error GoTo ManejoError
ThisWorkbook.Worksheets("Ventas").Unprotect Password:="Ventas2026"
ThisWorkbook.Worksheets("Ventas").Range("B2").Formula = "=C2*A2"
MsgBox "Hoja desprotegida", vbInformation, "Ventas"
Exit Sub
ManejoError:
MsgBox "No se pudo desproteger la hoja: " & Err.Description, _
vbExclamation, "Ventas"
End Sub
La macro hace tres cosas:
- Busca la hoja llamada exactamente
Ventasdentro deThisWorkbook. - Envía la contraseña
Ventas2026aUnprotect. - Escribe en
B2la fórmula=C2*A2y muestraHoja desprotegida.
Ejecuta la macro así:
- En el editor de VBA, selecciona
DesprotegerVentas. - Pulsa F5.
- Acepta el cuadro de diálogo.
- Vuelve a la hoja Ventas.
Al terminar, la hoja debe verse así:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Producto | Precio | Cantidad | Observaciones |
| 2 | Lapiz | 15,00 | 10 | Revisar stock |
| 3 | Cuaderno | 16,00 | 5 | Pedido 12 |
| 4 | Goma | 9,60 | 12 | Sin cambios |
| 5 | Bolígrafo | 8,80 | 8 | Reponer |
| 6 | Folder | 15,00 | 6 | Guardar |
En la salida del programa aparece exactamente:
Hoja desprotegida
B2 muestra 15,00 y puedes modificar las celdas de D2:D6.Buscar una contraseña conocida y ejecutarla de forma segura
Si el propietario te proporciona otra contraseña, cambia únicamente el argumento Password. Esta versión evita guardar la clave dentro del código y la solicita al ejecutar la macro:
Sub DesprotegerVentasConClave()
Dim clave As String
clave = InputBox("Escribe la contraseña de la hoja Ventas:")
If clave = "" Then Exit Sub
On Error GoTo ManejoError
ThisWorkbook.Worksheets("Ventas").Unprotect Password:=clave
MsgBox "Hoja desprotegida", vbInformation, "Ventas"
Exit Sub
ManejoError:
MsgBox "La contraseña no coincide o la hoja tiene otra protección.", _
vbExclamation, "Ventas"
End Sub
Para ejecutarla:
- Guarda una copia del libro antes de probarla.
- Abre Alt+F11.
- Ejecuta
DesprotegerVentasConClavecon F5. - Escribe la contraseña proporcionada por el propietario.
- Comprueba que la hoja se puede editar.
- Guarda el libro como
.xlsm.
La macro solo debe usarse cuando:
- El archivo es tuyo o tienes autorización.
- Conoces la contraseña.
- Has hecho una copia de seguridad.
- No intentas eludir una protecciónplaced por otra persona.
InputBox si quieres evitar guardar la contraseña en el módulo. Para uso interno y controlado, también puedesGuardar la clave en una ubicación segura del proceso autorizado.Por qué la macro no se ejecuta o no desprotegra la hoja
Estos son los fallos más habituales:
La macro desaparece al guardar
Qué se ve: después de guardar como .xlsx, el módulo VBA no aparece al volver a abrir.
Causa: el formato .xlsx no conserva macros.
Arreglo: guarda el libro como *Libro de Excel habilitado para macros (.xlsm)** antes de cerrar el editor.
Excel bloquea las macros descargadas
Qué se ve: el código no aparece o Excel muestra una advertencia de seguridad.
Causa: el archivo descargado puede conservar una marca de origen externo.
Arreglo: si el archivo es propio o estás autorizado, abre Archivo > Propiedades y revisa General. Marca Desbloquear y vuelve a abrirlo. No lo hagas con archivos desconocidos.
El nombre de la hoja no coincide
Qué se ve: aparece un error y la macro no encuentra la hoja.
Causa: el código busca Ventas, pero el nombre real es Ventas_Q1 o Ventas2.
Arreglo: comprueba el nombre en la pestaña de la hoja y ajusta Worksheets("Ventas").
Se está ejecutando desde otro libro
Qué se ve: la macro aparece en un archivo que no contiene la hoja esperada.
Causa: hay varios libros abiertos y se ejecutó el módulo equivocado.
Arreglo: en el editor, selecciona el proyecto del libro correcto antes de pulsar F5.
| A | B | |
|---|---|---|
| 1 | Producto | Precio |
| 2 | Lapiz | 1,50 |
| 3 | Cuaderno | 3,20 |
| 4 | Goma | 0,80 |
| 5 | Bolígrafo | 1,10 |
| 6 | Folder | 2,50 |
Qué alternativas existen cuando no existe una macro fiable
Si no existe una macro fiable o no conoces la contraseña, usa la vía compatible con el tipo de protección:
| Situación | Alternativa |
|---|---|
| Conoces la contraseña de la hoja | Revisar > Proteger > Desproteger hoja |
| No conoces la contraseña | Solicitar una copia sin protección al propietario |
| Solo algunas celdas deben editarse | Desbloquearlas antes de proteger la hoja |
| El libro está cifrado para abrirlo | Usar la contraseña de apertura; VBA no la elimina |
| La macro está bloqueada | Desbloquear solo un archivo propio o autorizado |
| El archivo no es editable | Trabajar en un libro nuevo con una copia autorizada |
Para cambiar qué celdas pueden editarse:
En Protección, desactiva Bloqueado para las celdas editables. Después protege de nuevo la hoja:
Si el libro está cifrado con contraseña de apertura, una macro no puede eliminar esa barrera. Desbloquear la macro en Propiedades tampoco elimina el cifrado del libro.
Este tutorial no enseña a cambiar la extensión del archivo, editar sus archivos internos en formato ZIP ni usar herramientas externas para reconstruir el libro. Esas técnicas pueden dañar el archivo y no son necesarias cuando trabajas con una copia autorizada.
Lo que ya sabes hacer con una macro para desproteger
- Identificar si lo bloqueado es una hoja, una celda o el cifrado de apertura.
- Preparar una hoja Ventas con una columna editable.
- Guardar el libro como
.xlsmantes de añadir VBA. - Abrir Alt+F11 e insertar un módulo.
- Usar
Unprotect Password:="Ventas2026"en una macro autorizada. - Ejecutar la macro con F5 y comprobar que aparece Hoja desprotegida.
- Corregir fallos de extensión, bloqueo de macros, nombre de hoja y libro seleccionado.
Para dejar el libro protegido de nuevo pero permitir cambios únicamente en las celdas necesarias, selecciona esas celdas y quita Bloqueado en Ctrl+1, en Protección. Después vuelve a:
El siguiente paso es definir qué datos deben permanecer bloqueados y colocar la contraseña únicamente en el proceso autorizado.
Dudas al usar una macro para desproteger Excel
1. ¿Cómo desproteger una hoja de Excel si olvidé la contraseña?
Si conoces la contraseña, usa Revisar > Desproteger hoja, introdúcela y acepta. Si no la conoces y el archivo es tuyo, recupera una copia sin protección o pide al propietario una versión editable. Una macro no elimina el cifrado de apertura ni garantiza adivinar cualquier contraseña.
2. ¿Cómo desproteger una hoja de Excel online?
En Excel para la web, comprueba si el archivo solo tiene una hoja protegida o un cifrado de apertura. Si conoces la clave, utiliza la opción de desproteger que ofrezca el servicio. Si no aparece o no permite quitarla, descarga una copia y trabaja con el propietario del archivo.
3. ¿Cómo desproteger una hoja de Excel bloqueada?
Una hoja protegida evita cambios accidentales, pero se puede quitar si conoces su contraseña. Selecciona la hoja y utiliza Revisar > Proteger > Desproteger hoja. También puedes dejar editables algunas celdas antes de protegerla mediante Formato de celdas > Protección.
4. ¿Cómo desbloquear Excel online con iLovePDF?
iLovePDF es un servicio externo y no sustituye a la protección de Excel ni garantiza que quite una hoja protegida. Si el archivo es tuyo, conserva una copia y utiliza Excel para la web o la aplicación de escritorio. Para información confidencial, evita subir el libro a herramientas externas no autorizadas.
5. ¿Cómo desproteger una hoja de Excel XLSM?
Guarda el libro como Libro de Excel habilitado para macros (.xlsm), abre el editor con Alt+F11, inserta un módulo y ejecuta una macro que utilice la contraseña conocida. Si el archivo sigue protegido, comprueba que la macro está en el libro correcto y que la hoja se llama exactamente «Ventas».
6. ¿Cómo desbloquear un archivo de Excel para editarlo?
Primero identifica qué está bloqueado: una hoja, las celdas o el cifrado de apertura. Para una hoja, Revisar > Proteger > Desproteger hoja es la vía normal si conoces la contraseña. Para un libro cifrado no existe una macro VBA que permita quitar la clave de apertura.
7. ¿Qué programa se usa para quitar una contraseña de Excel?
Excel permite quitar la protección de una hoja desde Revisar > Desproteger hoja cuando se conoce la contraseña. VBA también puede quitarla mediante Unprotect, pero solo dentro de un libro autorizado y con una clave conocida. Ninguna de esas opciones descifra un libro protegido para abrirlo.
8. ¿Cómo saber la contraseña de una hoja de Excel bloqueada?
Excel no muestra la contraseña de una hoja protegida. Si no la recuerdas, revisa tus Contraseñas guardadas, el historial del archivo o pide una copia nueva al propietario. Las macinas de fuerza bruta no son fiables para claves complejas y no deben usarse sobre archivos ajenos.
Fuentes
- Microsoftcomo desbloquear macros en excel – Microsoft Q&Aconsultado el 22/10/2026
- MicrosoftHOJA — documentación oficialconsultado el 22/10/2026
- MicrosoftProteger hoja y libro — documentación oficialconsultado el 22/10/2026
- MicrosoftEl editor de VBA y la primera macro — documentación oficialconsultado el 22/10/2026
- MicrosoftAtajos que funcionan igual en cualquier idioma — documentación oficialconsultado el 22/10/2026