Ocultar Variables en Excel para que Nadie pueda modificarlas

🔥 Platicando con Héctor Miguel, me dio este TIP súper valioso cuando trabajamos con Macros en Excel.

👉 Te enseñaré a ocultar Variables que tengan valores importantes y que nadie pueda modificar su contenido.

🔐 Además te daré 3 maneras de Súper Proteger el código de tus macros.

Ver video Ocultar variables de Excel VBA

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Qué haremos

Vamos a crear nombres definidos en Excel, para luego usarlos como variables en una macro. Usaremos una macro para ocultar los nombres definidos, además de proteger el código para que no puedan acceder a la macro que oculta los nombres.

Tendremos una macro que nos saludará dependiendo la hora del día: buenos días, buenas tardes o buenas noches. El texto mostrado es el que guardaremos como nombre definido.

Te recomendaré 3 manera de Proteger el código VBA de tus macros.

Creando nombres definidos

Nombres definidos en Excel - exceleinfo
Figura 1. Nombres definidos en Excel – exceleinfo

Seguimos los siguientes pasos para crear los nombres, que luego usaremos como variables:

  • Nos vamos a la Ficha Fórmulas > Administrador de nombres.
  • Damos clic en Nuevo.
  • Ingresamos el nombre Saludo1 y en Se refiere a usamos la fórmula = “Buenas noches “.

Hacemos lo mismo con el resto de los saludos, como se ve en la Figura 1.

Código VBA de la macro

Una vez que tenemos los nombres definidos (Saludo1, Saludo2 y Saludo3), procedemos a poner el siguiente código en un Módulo normal.

Option Explicit

'Mi canal de YouTube | youtube.com/user/sergioacamposh
'Mi Sitio | exceleinfo.com
'Descarga mi add-in | addin.exceleinfo.com
'Obtén la Certificación Excel Expert | exceleinfo.com/certificacion-mos

Sub Saludar()

Dim HoraActual As Date
Dim Nombre As String

    HoraActual = Time
    Nombre = "Sergio"
    
    Select Case HoraActual
        Case "00:00" To "05:59:59"
            'MsgBox "Buenas noches"
            MsgBox [Saludo1] & Nombre
    
        Case "06:00" To "11:59:59"
            'MsgBox "Buenos días"
            MsgBox [Saludo2] & Nombre
    
        Case "12:00" To "18:59:59"
            'MsgBox "Buenas tardes"
            MsgBox [Saludo3] & Nombre
    
        Case "19:00" To "23:59:59"
            'MsgBox "Buenas noches"
            MsgBox [Saludo1] & Nombre
    End Select

End Sub

Sub Nombres()

Dim Nombre As Object

For Each Nombre In ThisWorkbook.Names

    Nombre.Visible = True

Next Nombre

End Sub

Protección del código VBA de tus macros

Para proteger un Proyecto VBA y por ende, tus macros, tenemos 3 opciones:

  • Protección normal de Excel.
  • Aplicación Unviewble++
  • Aplicación VBA Compiler

Protección normal de un Proyecto VBA

Figura 2. Propiedades un proyecto VBA - exceleinfo
Figura 2. Propiedades un proyecto VBA – exceleinfo

La protección propia de Excel para bloquear el acceso a un Proyecto VBA, honestamente no es la más segura, pero descuida; la mayoría de las personas no se tomarán el tiempo de intentar siquiera romperla.

Seguimos los siguientes pasos para bloquear un VBAProject:

  • Entramos al IDE de VBA usando la combinación de teclas Alt + F11.
  • En la parte izquierda, damos clic derecho en el proyecto y elegimos Propiedades de VBAProject.
  • Activamos la pestaña Protección.
  • Marcamos la opción Bloquea proyecto para visualización.
  • Ingresamos una contraseña y luego Aceptar.

Basta con que guardemos y cerremos el archivo para que la protección quede aplicada.

Máxima protección de tus macros

Ya en YouTube he hablado de 2 herramientas que nos ayudarán a bloquear el acceso a las macros. Son aplicaciones de pago, pero tienen un buen nivel de protección.

Unviewable++. El proyecto Unviewable plus es un intento de proteger de una vez por todas su propiedad VBA intelectual sin dependencias de archivos externos de la mayor parte de los trucos de piratería. Los métodos actuales para proteger con contraseña su código son muy débiles y pueden ser fácilmente pirateados con numerosos artículos detallados publicados en Internet o bastante complejos.

VBA Compiler. VBA Compiler for Excel es un software de protección VBA que convierte el código VBA de los libros de Microsoft Excel y los complementos de Excel en el código binario de un archivo DLL nativo de Windows. Después de la compilación, su código VBA no se puede copiar ni recuperar y tiene el más alto nivel de protección contra la piratería.

Descarga el archivo para practicar

Variables súper ocultas – EXCELeINFO.zip

⭐ Si te gustó este tutorial, por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: