Cómo proteger y desproteger hojas de un Libro de Excel usando Macro

hojas de excel con logo verde

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 Proteger y Desproteger Hojas de un Libro de Excel Usando 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.

logo verde de excel en office

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.

publicidad de excel en office 360

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.

Subir