Formularios más amigables con la propiedad ControlTipText en Excel vba
Cuando desarrollamos formularios en Excel siempre debemos buscar que éstos sean lo más amigables posible al usuario final, o por lo menos es lo que yo sugiero. Una de las propiedades que nos permitirán que sea más fácil usar un formulario es la propiedad ControlTipText. Esta propiedad hará que se muestre un mensaje flotante al momento de poner el curso sobre un Control.
Para este ejemplo tenemos un formulario que hará una suma de dos operadores. Ambos operadores serán el valor de dos TextBoxes.
Figura 1. Formulario para realizar una suma.
Mira el video
Ahora lo que buscamos es que se muestren ayudas visuales al momento de pasar el cursor sobre un Control. Estas ayudas harán que sea más fácil al usuario saber qué valores ingresar en algún control o saber qué se hará al momento de presionar un botón.
Figura 2. La propiedad ControlTipText se muestra al momento de pasar el curso sobre un Control.
Código vba de la macro
La propiedad ControlTipText se puede asignar a cualquier control incrustado en un formulario, no así cuando el control está incrustado en una hoja.
Usaremos el evento UserForm_Initialize del Formulario, para asignar diferentes texto a los controles del formulario mediante la propiedad ControlTipText.
Private Sub UserForm_Initialize() ' 'Hacemos uso de la propiedad ControlTipText Me.txtNumero1.ControlTipText = "Ingresa el primer número" Me.txtNumero2.ControlTipText = "Ingresa el segundo número número" Me.btnSuma.ControlTipText = "Clic para sumar" ' End Sub
La siguiente macro será asignada al botón para hacer la suma. Nótese que también usamos la propiedad ControlTipText en la etiqueta que muestra el resultado de la suma.
'--------------------------------------------------------------------------------------- ' Module : UserForm1 ' Author : MVP, Sergio Alejandro Campos ' Date : 13/06/2016 ' Purpose : Uso de la propiedad ControlTipText '--------------------------------------------------------------------------------------- ' Private Sub btnSuma_Click() ' 'Asignamos valores a las variables Num1 = Val(Me.txtNumero1.Value) Num2 = Val(Me.txtNumero2.Value) ' 'Asignamos valor a la variable Suma Suma = Num1 + Num2 ' 'El resultado de la suma lo asignamos a la etiqueta. Me.Label1.Caption = Suma 'Asigamos un texto personalizado a la propiedad ControlTipText Me.Label1.ControlTipText = "La suma es: " & Me.Label1.Caption ' End Sub
Descarga el archivo de ejemplo
Descara el archivo usado en este artículo: Formularios más amigables con la propiedad ControlTipText en Excel vba.rar