Calculo vencimientos con días fijos de pago.

Respuesta de
sofocles
a
Usuario
Buenos días Sofocles, necesito calcular el vencimiento en una factura, teniendo en cuenta que en ocasiones hay un día fijo para el pago, es decir no es solo sumar los días de vencimiento (ejemplo: 30) a la fecha de la factura sino que ademas el cliente tiene un día fijo de pago en cada mes, por ejemplo: una factura con fecha 20/03/2002 y con un vencimiento de 30 días fecha factura y días de pago el 10 debería de dar como resultado el 10/05/2002. ¿puedes ayudarme? Gracias.
Experto
Estimado Usuario:

Debes crear una función que a parte de calcular la fecha de vencimiento a partir de los días de fecha factura, ajuste la fecha a los días fijos de pago.

Para ello, en tu función deberás enviar el valor relativo a los días fecha factura y el día fijo de pago, junto con la fecha de emisión, más o menos así:

Public Function CalcularVencimiento(FeEmi,DiaPago,DiasFF)

En la función lo primero que debes calcular es la fecha de vencimiento a partir de la fecha de emisión y los días de fecha factura, más o menos así:

Vto=DateAdd("d",DiasFF,FeEmi)

Una vez calculado en vencimiento, deberás ir sumando días hasta conseguir el día fijo de pago, utilizando un bucle, más o menos así:

For i=1 to 31
If DiaPago<>day(Vto) then
Vto=DateAdd("d",1,Vto)
else
exit for
End If
Next i

De esta forma obtienes el día fijo de pago.

Espero haberte ayudado.

Saludos.

Sofocles.