Trucos y tretas
 
Obtener el primer y último día del mes

Regresar al menú "Trucos"
Principal


Autor: Daniel Quintero
Fecha: 10 de agosto del 2001
Descripción: Obtener el primer y el último día del mes de una fecha dada
Comentarios: Basado en un ejemplo de los artículos técnicos del MSDN

Para este ejemplo, vamos a utilizar la función DateSerial. Esta función regresa un número único correspondiente a una posible fecha comprendida entre el 1 de enero del año 100 D.C. hasta el 31 de diciembre del año 9999 D.C., ¡uff, mucho tiempo¡.

Para calcular el primer día del mes, creamos una fecha con la función DateSerial, pasándole como parámetros el año, el mes y un 1 para el día. ¿Difícil no? .

Para calcular el último día del mes, también creamos una fecha con la función DateSerial, pasándole como parámetros el año, el mes + 1 y un 0. Con esto le decimos a la función que queremos el día anterior al primer día del siguiente mes. ¿Fácil no? .

He aquí la función para el primer día del mes:

'------------------------------------------------------------------------
'
' Procedimiento:  PrimerDiaMes
' Autor:          Daniel Quintero [dqrsoftware@gmx.net]
' Fecha:          10/Ago/2001
' Propósito:      Obtiene el primer día del mes de una fecha dada
' Resultado:      Date
' Parámetros de entrada:
'     dtFecha  -  Cualquier fecha
'
'------------------------------------------------------------------------
Public Function PrimerDiaMes(dtFecha As Date) As Date

   PrimerDiaMes = DateSerial(Year(dtFecha), Month(dtFecha), 1)

End Function

Y aquí la función para el último día del mes:

'------------------------------------------------------------------------
'
' Procedimiento:  UltimoDiaMes
' Autor:          Daniel Quintero [dqrsoftware@gmx.net]
' Fecha:          10/Ago/2001
' Propósito:      Obtiene el último día del mes de una fecha dada
' Resultado:      Date
' Parámetros de entrada:
'     dtFecha  -  Cualquier fecha
'
'------------------------------------------------------------------------
Public Function UltimoDiaMes(dtFecha As Date) As Date

   UltimoDiaMes = DateSerial(Year(dtFecha), Month(dtFecha) + 1, 0)
   
End Function


Arriba
Regresar al menú "Trucos"
Principal

Derechos reservados © 2001 Daniel Quintero Rojas (dqrsoftware@gmx.net)