PROGRAMAR UNA MACRO PARA LANZAR UN MsgBox
Programar en VBA es muy útil para optimizar nuestro tiempo, pues, permite automatizar tareas repetitivas, crear formularios, lanzar cuadros de diálogo como, por ejemplo, MsgBox o InputBox , proteger los datos de una hoja o un libro con contraseña, entre muchas otras opciones. En esta entrada veremos cómo programar, de forma muy sencilla, un MsgBox.
¿Qué es un MsgBox?
MsgBox es una función de VBA que permite lanzar un cuadro de diálogo que contiene un mensaje personalizado. Además del mensaje, también podemos personalizar el título del cuadro diálogo, los botones de control, el tipo de mensaje (restricción, advertencia, información...), incluso podemos configurar un archivo de ayuda.
Así como las funciones de Excel tienen una sintaxis (es decir, un orden invariable de los elementos que constituyen la función) y criterios o argumentos, las funciones en VBA también tienen su respectiva sintaxis y parámetros.
Específicamente, el MsgBox tiene cinco (5) parámetros, de los cuales solamente el primero es obligatorio, observémoslos con detalle.
Parámetros del MsgBox
Prompt (obligatorio): Es la cadena de texto que queremos contenga nuestro cuadro de diálogo, debe ir siempre entre comillas, también puede ser una variable que contiene el resultado de una operación. Incluso podemos usar ambos a través del operador & (ampersand)
Buttons (opcional): Este parámetro permite configurar los botones del MsgBox y el tipo de mensaje, tras poner la coma se presentarán diferentes opciones entre las que podremos elegir la que más se acomode a nuestros requerimientos. Por defecto, es decir, si no programas nada para este parámetro, el MsgBox solamente mostrará el botón Aceptar, por ejemplo:
Title (opcional): Es la cadena de texto que se presentará como título de nuestro cuadro de diálogo, debe ir siempre entre comillas. Por defecto, es decir, si no programas nada para este parámetro, el MsgBox mostrará el texto "Microsoft Excel", tal y como lo puedes observar en el ejemplo inmediatamente anterior.
HelpFile y Context (opcionales): Son dos parámetros opcionales que permiten configurar un archivo de ayuda, aunque no es muy común usarlos, en caso de requieras programarlos, recuerda que siempre están juntos, es decir, dependen uno del otro. Si no incluyes ninguna programación para ellos no cambia en nada la apariencia del MsgBox ni su funcionamiento (a menos que incluyas un botón "Ayuda").
En resumen, la sintaxis del MsgBox es la siguiente:
MsgBox (prompt, [ buttons, ] [ title, ] [ helpfile, context ])
Ahora que conocemos con precisión los parámetros de la función MsgBox compartiremos algunos ejemplos de cómo programarla, veamos:
¿Cómo programar un MsgBox independiente?
1. Oprimir Alt + F11 para cargar la ventana de Microsoft Visual Basic para Aplicaciones
2. Clic en la ficha/pestaña "Insertar" y luego seleccionar la opción "Módulo"
3. En el nuevo módulo, digitar el siguiente código:
Sub CommandButton1_Click()
'CÓDIGO PARA LANZAR UN MSGBOX CON UN MENSAJE
MSGBOX "¡FELIZ VIERNES!", vbDefaultButton1, "EXCEL AL INSTANTE"
¡Listo! ahora puedes ejecutar tu macro desde el cuadro de diálogo "Macro" o asignarle un botón. Recuerda que puedes encontrar los procedimientos para hacerlo aquí:
Ejecutar una macro en Excel
https://excelalinstante.blogspot.com/ejecutarunamacroenexcel.html
¿Cómo programar un MsgBox que contenga un texto y un resultado almacenado en una variable?
Como lo mencionamos en un principio, el parámetro Prompt puede incluir un texto, un resultado contenido en una variable o amabas cosas. Aquí, compartimos un código que permite hallar el área de un triángulo, cuya base y altura pueden asignarse a través de InputBox y el resultado se notifica a través de un MsgBox. Luego de insertar tu módulo de Microsoft Visual Basic para Aplicaciones o en uno creado previamente, bastará con incluir el siguiente código:
Dim ALTURA As Integer
Dim AREA As Double
BASE = InputBox("BASE")
Range("C3").Value = BASE
ALTURA = InputBox("ALTURA")
Range("C4").Value = ALTURA
AREA = BASE * ALTURA / 2
Range("C5").Value = AREA
MsgBox ("El área del triángulo es: " & AREA)
Recuerda que es muy importante guardar el libro correctamente para que las macros se ejecuten más adelante, en esta entrada veremos cómo hacerlo al instante:
https://excelalinstante.blogspot.com/guardar-un-libro-con-macros-en-excel.html
Comentarios
Publicar un comentario