Índice

Redactar funciones personalizadas

Para redactar una función personalizada, debe:

  • Escoger el tipo de función

  • Fijar los argumentos de la función

  • Programar la lógica "de negocio" a la que la función debe responder.

Escoger el tipo de función

Una función personalizada devuelve un resultado. Como para una variable, el resultado de ser del tipo: Integer, Long, Boolean, String, etc.

Function Nombre_Función(............) As tipoResultado

Ejemplos:

Function AcuerdoPréstamo(............) As Boolean 
Function TipoInterés(............) As Double

Fijar los argumentos de la función

Los argumentos facultativos

Generalmente, la función tiene uno o varios argumentos. Algunos de estos argumentos pueden ser facultativos. Si ése fuera el caso, el argumento debe ir precedido del calificativo Optional. En el cuerpo de la función, verificamos la presencia del argumento facultativo mediante la función VBA IsMissing(). El interés reside en crear una función con los argumentos suficientes como para que sea lo más general posible. Dicha opción evita la multiplicación de funciones demasiado particulares.

Si uno de los argumentos es Optional, todos los argumentos que le siguen deberán ser del tipo Optional. Un argumento Optional siempre es del tipo Variant salvo si le damos un valor por defecto.

Ejemplo 1:

Function PrecioPúblicoIVA(dblPVSI As Double, Optional dblImp) 
    Application.Volatile 
    If ...