Cómo calcular el número de días entre dos fechas en vba
Devuelve el valor de la variable (Long), que indica el número de intervalos de tiempo entre dos fechas especificadas.
Sintaxis
DateDiff(intervalo, fecha1, fecha2[, primer día de la semana[, primera semana del año]])
La sintaxis de la función DateDiff tiene los siguientes parámetros con nombre:
p>
Descripción de la pieza
Se requiere intervalo. Expresión de cadena que representa el intervalo de tiempo utilizado para calcular la diferencia horaria entre fecha1 y fecha2
Fecha1□fecha2 variable (fecha). Las dos fechas utilizadas en el cálculo.
Primer día de la semana Opcional. Una constante que especifica el primer día de la semana. Si no se especifica, se utiliza el domingo como primer día.
La primera semana del año es opcional. Constante que especifica la primera semana del año. Si no se especifica, la semana que contiene el 1 de enero es la semana uno.
Configuración
Los valores de los parámetros de intervalo son los siguientes:
Instrucciones de configuración
yyyyyy año
q trimestre
p>
m mes
y número de días del año
d día
w número de días de la semana
ww semana
h horas
n minutos
h horas
n minutos
h horas
n minutos p>
h horas
n minutos
s segundos
La configuración del parámetro del primer día de la semana es la siguiente:
Descripción del valor constante
vbUseSystem 0 se configura mediante la API NLS.
vbDomingo 1 Domingo (predeterminado)
vbLunes 2 Lunes
vbMartes 3 Martes
vbMiércoles 4 Miércoles
vbJueves 5 Jueves
vbViernes 6 Viernes
vbSábado 7 Sábado
Descripción del valor constante
vbUseSystem 0 Establecido usando la API NLS.
vbFirstJan1 1 Inicia la semana que contiene el 1 de enero (predeterminado).
vbFirstFourDays 2 comienza la mitad del tiempo en la primera semana del nuevo año.
vbFirstFullWeek 3 Comienza desde la primera semana que no cruza un nuevo año.
Descripción
La función DateDiff se puede utilizar para determinar un número específico de intervalos entre dos fechas. Por ejemplo, DateDiff se puede utilizar para calcular el número de días entre dos fechas o para calcular cuántas semanas quedan entre hoy y el final del año.
Para calcular el número de días entre la fecha1 y la fecha2, puede utilizar "días en el año" (y) o "días" (d). Si el intervalo es "días de la semana" (w), DateDiff devuelve el número de semanas entre los dos días. Si la fecha1 es lunes, DateDiff calcula el número de días que terminan en lunes con la fecha2. Este número incluye la fecha 2 pero no la fecha 1; sin embargo, si el intervalo es "semanas" (ww), la función DateDiff devuelve el número de "semanas del calendario" dentro de dos días. Contando el número de días de la semana entre la fecha1 y la fecha2. Si la fecha2 es domingo, la fecha2 también se agregará al recuento de DateDiff pero la fecha1 no se contará independientemente de si es domingo.
Si la fecha1 es posterior a la fecha2, la función DateDiff devolverá un número negativo.
El parámetro primer día de la semana afecta a los resultados calculados utilizando la notación de intervalo "W" o "WW".
Si fecha1 o fecha2 es una fecha literal, el año especificado se convierte en una parte fija de la fecha. Sin embargo, si fecha1 o fecha2 están entre comillas dobles (" ") y se omite el año, el año actual se inserta en el código cada vez que se evalúa la expresión fecha1 o fecha2. Esto hace posible escribir código de programa para diferentes años.
Al calcular la diferencia anual entre el 31 de diciembre y el 1 de enero del año siguiente, DateDiff devolverá 1, lo que indica una diferencia de un año, aunque en realidad la diferencia sea solo un día.
Ejemplo de función DateDiff
Este ejemplo utiliza la función DateDiff para mostrar el número de días entre una fecha y hoy.
Dim TheDate As Date ' Declara la variable.
Dim Msg
TheDate = InputBox("Ingrese una fecha")
Msg = "Días a partir de hoy:" amp DateDiff("d", Now; , LaFecha)
Mensaje de MsgBox