Ayuda access

Hola, soy principiante en access
Necesito saber si hay alguna manera de hacer lo siguiente:
Alguna función que de acuerdo a la fecha actual, si la fecha es entre el día 1° y el día 14 me devuelva el periodo del mes anterior:
Ej: Si estamos en Noviembre y es 12/Nov/08 estamos entre el día 1° y día 14, entonces me tiene que dar como resultado: Periodo del 01/Oct/08 al 31/0ct/08
Y en caso en que la fecha estuviera entre el día 15 y el día 30 o 31, me devuelva el perido de la mitad del mes anterior y la mitad del siguiente mes. Es decir:
Ej: Si estamos a 23/Nov/08, esta entre el día 15 y el día 31, entonces me tiene que dar como resultado: Periodo del 15/Oct/08 al 15/Nov/08.
Y así sucesivamente dependiendo del mes en que nos encontremos.
Espero puedas ayudarme
De antemano gracias
Respuesta
1
Copia el siguiente código en un módulo:
'****************************************
Public Function fPeriodo(pFec As Date) As String
<span style="white-space: pre;"> </span>Dim dIni As Date, dFin As Date
<span style="white-space: pre;"> </span>If Day(pFec) <= 14 Then
<span style="white-space: pre;"> </span>dFin = DateSerial(Year(pFec), Month(pFec), 0)
<span style="white-space: pre;"> </span>dIni = DateSerial(Year(dFin), Month(dFin), 1)
<span style="white-space: pre;"> </span>Else
<span style="white-space: pre;"> </span>dFin = DateSerial(Year(pFec), Month(pFec), 15)
<span style="white-space: pre;"> </span>dIni = DateAdd("m", -1, dFin)
<span style="white-space: pre;"> </span>End If
<span style="white-space: pre;"> </span>fPeriodo = "Periodo del " & Format(dIni, "dd/mmm/yy") & " al " & Format(dFin,"dd/mmm/yy")
End Function
'****************************************

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas