VBA – Llamar Función desde un Sub
Este tutorial le enseñará cómo llamar a una función desde un subprocedimiento en VBA.
Cuando creas una función en VBA, puedes usar la función como una UDF (Función Definida por el Usuario) en tu Libro de Excel, o puedes llamarla desde un Sub Procedimiento.
Llamada a una Función desde un Sub-Procedimiento
Una vez creada una función, puede llamarla desde cualquier otra parte de su código utilizando un Sub Procedimiento para llamar a la función.
Considere la siguiente función:
Function GetValue() As Integer
GetValue = 50
End Function
Debido a que las funciones devuelven un valor, para llamar a la función, debemos pasar el valor a algo. En este caso, pasaremos el valor a una variable:
Sub TestValues()
Dim intVal As Integer
'ejecuta la función GetValue
intVal = GetValue()
'y muestra el valor
MsgBox intVal
End Sub
Llamando a una Función con Parámetros
Si la función tiene parámetros, necesitará pasar estos parámetros desde el Sub Procedimiento a la Función para obtener el valor correcto de vuelta.
Function GetValue(intA as Integer) As Integer
GetValue = intA * 5
End Function
Para llamar a esta función, podemos ejecutar el siguiente Sub Procedimiento.
Sub TestValues()
MsgBox GetValue(10)
End Sub
Este Sub Procedimiento enviaría el valor de 10 a la función, que a su vez multiplicaría ese valor por 5 y devolvería el valor a 50 al Sub Procedimiento.