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.

Leave a Comment

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

Scroll to Top