11 agosto, 2026

UDF PARA OBTENER EL TRIMESTRE DE LA FECHA SELECCIONADA

Hola a todos!

Hace tiempo desarrollé un cálculo para obtener información trimestral de una serie de conceptos, obtenía esta información utilizando la ejecución de un botón. De hecho, es muy simple:

En propiedad OnSelect del botón ponéis:

Set(miTrim; 
    If(
        IsBlank(TextInput1.Text); 
        "Fecha vacía"; 
        Len(TextInput1.Text) <> 10; 
        "Formato no es fecha"; 
        IsError(DateValue(TextInput1.Text)); 
        "Formato no es fecha"; 
        RoundUp(Month(DateValue(TextInput1.Text)) / 3; 0)
    ))

Donde la fecha la colocamos en el TextIntput1 y utilizando un Set para pasar el valor a la variable miTrim, obtenemos el trimestre.

Existen más fórmulas para calcular el trimestre, por ejemplo con un Switch, pero yo siempre uso la que veis en el código.

Pues bien, el tema ha sido que he tenido que convertir este código a una UDF, ya que un lector así me lo ha pedido (bueno, más bien se lo he recomendado). Y como ya tenía el código que habéis visto, simplemente lo adapté a una UDF. Y sería así:

ObtenerTrimestre(Fecha: Text): Text = 
    If(
        IsBlank(Fecha); 
        "Fecha vacía"; 
        Len(Fecha) <> 10; 
        "Formato no es fecha"; 
        IsError(DateValue(Fecha)); 
        "Formato no es fecha"; 
        RoundUp(Month(DateValue(Fecha)) / 3; 0)
    );; 

Esta función la vamos a colocar en la propiedad fórmulas de nuestra APP y luego la podremos invocar sobre cualquier objeto que tenga una fecha válida, por ejemplo un selector de fecha.

Además la UDF va a calcular automáticamente el resultado sin que tengamos que presionar ningún botón.

Y aquí os dejo, el post de hoy. Espero que sea de utilidad!!.

Comparte este post

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies