Cómo proteger y desproteger hojas de un Libro de Excel usando Macro
Una hoja de cálculo puede ser protegida de tal manera que se inhiba la edición del mismo mediante una contraseña. En el tutorial de hoy te vamos a contar como proteger y desproteger hojas de un libro de Excel utilizando Macro.
Cómo crear la Macro en Excel en pocos pasos
Ante de explicarte cómo proteger o desproteger un libro de Excel con Macros, debes saber cómo crear Macros. El procedimiento es muy sencillo y vamos a explicarte paso a paso para que lo puedas realizar sin ningún inconveniente y así puedas establecer un archivo Excel para solo lectura.
Para comenzar debes abrir el programa de Excel y posicionarte sobre el Editor de Visual Basic. Lo puedes visualizar en la parte superior de la pantalla, a tu izquierda. Generalmente está representado por VS.
Acá una aclaración importante. Depende de la versión que tengas disponible de Excel, variara la ruta de acceso. Si no cuentas con el botón VB en la barra de herramientas en la parte superior de la pantalla, realiza la siguiente secuencia: “Archivo > opciones > Desarrollador / Programador > Virtual Basic"
De manera automática se abrirá el editor y podrás utilizar los menús y herramientas de la ventana. Debes colocar el siguiente comando dentro de un nuevo módulo: ActiveSheet y entre paréntesis una contraseña con la que deseamos establecer la protección, puedes añadir también el nombre o número de hoja si quieres especificarlo, o incluso puedes proteger celdas en Excel para que no sean modificadas.
Cómo funciona el Macros para Excel
Una macro automatiza las funciones que realizamos frecuentemente para optimizar el tiempo de edición de un libro en Excel. Se crean con Microsoft Virtual Basic y son diseñadas por programadores de software.
Con ella podremos poner una contraseña a un archivo Excel para que los demás usuarios no puedan modificar, copiar o imprimir los datos que se encuentran disponibles dentro de dicho documento. De modo tal, que solo podrán acceder con un modo de lectura, salvo que introduzca la contraseña para habilitar la edición.
Lo primero que debemos hacer, es permitirle al modelo de objetos de proyectos VBA el acceso mediante una contraseña. Para ello vas a realizar la siguiente secuencia “Archivo > Opciones > Centro de confianza > Configuración de centro de confianza > Configuración de Macros. Allí debes tildar “Confiar en el acceso al modelo de objetos de proyectos VBA.
Para poder proteger un libro, además debes tildar la casilla “Habilitar todas las macros”. En caso de que las quieras desproteger, deberás tildar en cambio “Deshabilitar todas las macros con o sin notificación”.
Cómo proteger un libro de Excel con macros en pocos pasos
Para proteger la estructura del libro para que nadie pueda crear o eliminar hojas salvo que conozca la contraseña, debes escribir el siguiente comando en VBA:
[codesyntax lang=»vb» lines=»no» container=»pre» blockstate=»expanded» doclinks=»0″]
Y luego quedará escrito de la siguiente manera:
Sub Proteger()
On Error GoTo fin
ActiveWorkbook.Protect ("Contraseña para proteger")
fin:
End Sub
Si quieres en cambio proteger el libro completo necesitas escribir el siguiente comando
[codesyntax lang=»vb» lines=»no» container=»pre»]
Y luego deberá quedar establecido de la siguiente manera
Sub Proteger(nombre del libro o página)
On Error GoTo fin
Dim sht As Worksheet
Application.ScreenUpdating = False
ActiveWorkbook.Protect ("contraseña para proteger el libro")
For Each sht In ActiveWorkbook.Worksheets
If sht.Visible = True Then
sht.Protect ("contraseña para proteger el libro")
End If
Next
fin:
End Sub
Como puedes observar le hemos añadido unas líneas en las que discriminamos las hojas que queremos proteger con el comando Protect y el nombre o número de hoja.
Como desproteger un libro de Excel en pocos pasos
Puedes desproteger un libro de Excel o una hoja de cálculo de la misma de la misma forma que lo hiciste para proteger, solo que vamos a cambiar algunos detalles de los comandos.
Para desproteger una hoja de cálculo vamos a insertar el siguiente código:
ActiveSheet.Unprotect "Contraseña que utilizaste para proteger"
Si en cambio lo que queremos hacer es desproteger un libro de Excel, debemos insertar el siguiente código:
ThisWorkbook.Unprotect "Contraseña que utilizaste para proteger"
Esperamos que este tutorial sobre protección y seguridad en Excel te haya servido de utilidad. Si tienes dudas déjalas en los comentarios para que podamos ayudarte a resolverlo.