Subrutina de Excel VBA: cómo llamar a Sub en VBA con ejemplo
¿Qué es una subrutina en VBA?
A Subrutina en VBA es un fragmento de código que realiza una tarea específica descrita en el código pero no devuelve un resultado ni un valor. Las subrutinas se utilizan para dividir grandes fragmentos de código en pequeñas partes manejables. Las subrutinas se pueden recuperar varias veces desde cualquier parte del programa.
Supongamos que ha creado una interfaz de usuario con cuadros de texto para aceptar datos de entrada del usuario. Puede crear una subrutina que borre el contenido de los cuadros de texto. Una subrutina de llamada de VBA es adecuada en este tipo de escenario porque no desea devolver ningún resultado.
¿Por qué utilizar subrutinas?
- Divida el código en código pequeño y manejable:Un programa informático promedio tiene miles y miles de líneas de código fuente, lo que genera complejidad. Las subrutinas ayudan a resolver este problema al dividir el programa en pequeños fragmentos de código manejables.
- Código de reutilizaciónDigamos que tienes un programa que necesita acceder a la base de datos; casi todas las ventanas del programa necesitarán interactuar con la base de datos. En lugar de escribir código independiente para estas ventanas, puedes crear una función que se encargue de todas las interacciones con la base de datos. Luego, puedes llamarla desde cualquier ventana que desees.
- Las subrutinas y funciones se autodocumentan.. Digamos que tienes una función calcularPréstamoInterés y otra que dice conectarABase de Datos. Con solo mirar el nombre de la subrutina/función, el programador podrá saber qué hace el programa.
Reglas para nombrar subrutinas y funciones
Para utilizar subrutinas y funciones, hay un conjunto de reglas que hay que seguir.
- El nombre de una subrutina o función de llamada de VBA no puede contener espacios
- Un nombre de función o subllamada de Excel VBA debe comenzar con una letra o un guión bajo. No puede comenzar con un número o un carácter especial.
- El nombre de una subrutina o función no puede ser una palabra clave. Una palabra clave es una palabra que tiene un significado especial en VBA. Palabras como Privado, Sub, Función y Fin, etc. son ejemplos de palabras clave. El compilador los usa para tareas específicas.
Sintaxis de subrutina VBA
Deberá habilitar la pestaña Desarrollador en Excel para seguir este ejemplo. Si no sabe cómo habilitar la pestaña Desarrollador, lea el tutorial en VBA Operatoros
AQUÍ en la sintaxis,
Private Sub mySubRoutine(ByVal arg1 As String, ByVal arg2 As String) 'do something End Sub
Explicación de la sintaxis
Código | Acción |
---|---|
|
|
|
|
|
|
La siguiente subrutina acepta el nombre y apellido y los muestra en un cuadro de mensaje.
Ahora vamos a programar y ejecutar este Sub Procedimiento. Veamos esto.
Cómo llamar a Sub en VBA
A continuación se muestra un proceso paso a paso sobre cómo llamar a Sub en VBA:
- Diseñe la interfaz de usuario y establezca las propiedades de los controles de usuario.
- Agregar la subrutina
- Escriba el código de evento de clic para el botón de comando que llama a la subrutina
- Prueba la aplicación
Paso 1) Interfaz de usuario
Diseñe la interfaz de usuario como se muestra en la imagen a continuación.
Establezca las siguientes propiedades. Las propiedades que estamos configurando:
S / N | Control | Propiedad | Value alto |
---|---|---|---|
1 | Botón de comando1 | Nombre | btnDisplayNombre completo |
2 | Subtítulo | Subrutina de nombre completo |
Su interfaz ahora debería tener el siguiente aspecto.
Paso 2) Agregar subrutina
- Presione Alt + F11 para abrir la ventana de código
- Agregue la siguiente subrutina
Private Sub displayFullName(ByVal firstName As String, ByVal lastName As String) MsgBox firstName & " " & lastName End Sub
AQUÍ en el código,
Código | Acciones |
---|---|
|
|
|
|
|
|
Paso 3) Llamando a la subrutina
Llamar a la subrutina desde el evento de clic del botón de comando.
- Haga clic derecho en el botón de comando como se muestra en la imagen a continuación. Seleccione Ver código.
- Se abrirá el editor de código.
Agregue el siguiente código en el editor de código para el evento de clic del botón de comando btnDisplayFullName.
Private Sub btnDisplayFullName_Click() displayFullName "John", "Doe" End Sub
Su ventana de código ahora debería verse de la siguiente manera
Guarde los cambios y cierre la ventana del código.
Paso 4) Probando el código
En la barra de herramientas del desarrollador, desactive el modo de diseño. Como se muestra abajo.
Paso 5) Haga clic en el botón de comando 'Subrutina de nombre completo'.
Obtendrás los siguientes resultados
Resum
- Una subrutina es un fragmento de código que realiza una tarea específica. Una subrutina no devuelve un valor después de la ejecución
- Las subrutinas ofrecen reutilización de código
- Las subrutinas ayudan a dividir grandes fragmentos de código en código pequeño y manejable.