Función DateDiff

Devuelve el número de intervalos entre dos fechas.

Sintaxis

DateDiff(interval, date1, date2)

Argumentos:

  • Interval: necesario. Expresión de cadena que es el intervalo que desea utilizar para calcular las diferencias entre date1 y date2. Consulte la sección Configuración para ver los valores.
  • date1, date2: necesario. Expresiones de fecha. Dos fechas que desea utilizar en el cálculo.
Configuración: el argumento interval puede tener los siguientes valores:

Tabla 11-10 Valores del argumento interval

Configuración Descripción
yyyy Año
q Trimestre
m Month
d Day
w Día hábil
h Hour
n Minute
s Second

Formatos de fecha soportados:

  • MM-DD-YYYY
  • MM/DD/YYYY
  • DD-MM-YYYY
  • DD/MM/YYYY
  • YYYY-MM-DD
  • YYYY/MM/DD

Formato de hora soportado:

hh:mm:ss

Observaciones

Puede utilizar la función DateDiff para determinar cuántos intervalos de tiempo especificados existen entre dos fechas. Por ejemplo, puede utilizar DateDiff para calcular el número de días entre dos fechas.

Para calcular el número de días entre date1 y date2, puede utilizar el valor de día ("d"). Si date1 hace referencia a un punto en el tiempo posterior a date2, la función DateDiff devuelve un número negativo.

Al comparar el 31 de diciembre con el 1 de enero del año inmediatamente posterior, DateDiff con el valor de año ("yyyy") devuelve 1 aunque solo haya transcurrido un día.

En el siguiente ejemplo se utiliza la función DateDiff para mostrar el número de días entre una fecha determinada y la fecha actual:

Ejemplo 1:

Function DiffADate(theDate)
DiffADate = "Days from today: " & DateDiff("d", Now, theDate)
End Function

Ejemplo 2:

Dim StartDate, EndDate, Difference
StartDate = "01/01/2025"
EndDate = "21/01/2025"
Difference = DateDiff("d", StartDate, EndDate) 
'Output: 20

Ejemplo 3:

Dim StartDate, EndDate, Difference
StartDate = "01/01/2020"
EndDate = "01/01/2025"
Difference = DateDiff("yyyy", StartDate, EndDate) 
'Output: 5

Ejemplo 4:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025"
EndDate = "21/03/2025" 
Difference = DateDiff("m", StartDate, EndDate)
'Output: 2

Ejemplo 5:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:00:00" ' Includes time component.
EndDate = "21/01/2025 18:00:00"   ' Includes time component.
Difference = DateDiff("h", StartDate, EndDate) 
'Output: 10

Ejemplo 6:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:00:00" ' Includes time component.
EndDate = "21/01/2025 08:45:00"   ' Includes time component.
Difference = DateDiff("n", StartDate, EndDate) 
'Output: 45

Ejemplo 7:

Dim StartDate, EndDate, Difference
StartDate = "21/01/2025 08:45:00" ' Includes time component.
EndDate = "21/01/2025 08:45:50"   ' Includes time component.
Difference = DateDiff("s", StartDate, EndDate) 
'Output: 50