Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
MS Access: función DateDiff
Este tutorial de MSAccess describe cómo usar Access Función de diferencia de fecha Con sintaxis y ejemplos.
describir
La función DateDiff de Microsoft Access devuelve la diferencia entre dos valores de fecha en función de un intervalo de tiempo específico.
sintaxis
La sintaxis de la función DateDiff en MS Access es:
DateDiff ( interval, date1, date2, [firstdayofweek], [firstweekofyear])
parámetro o parámetro
intervalo
El intervalo de tiempo utilizado para calcular la diferencia entre fecha1 y fecha2. A continuación se muestra una lista de valores de intervalo válidos.
intervalo | explique |
---|---|
todos los años | año |
q | moneda de 25 centavos |
arroz | Luna |
sí | día del año |
D | día |
w | días laborables |
World Wide Web | Semana |
H | Hora |
norte | minuto |
s | segundo |
date1 y date2 calculan la diferencia entre dos fechas.primer día de la semana
Electivo. Es una constante que especifica el primer día de la semana. Si se omite este parámetro, Access asume que el domingo es el primer día de la semana. Este parámetro puede ser uno de los siguientes valores:
continuo | valor | explique |
---|---|---|
sistema de uso vb | 0 | Configuración mediante la API de NLS |
domingo | 1 | Domingo (predeterminado) |
lunes | 2 | los lunes |
martes | 3 | martes |
miercoles | 4 | miércoles |
jueves | 5 | jueves |
viernes | 6 | viernes |
sabado | 7 | sábado |
La primera semana
Electivo. Es una constante que especifica la primera semana del año. Si se omite este parámetro, Access asume que la semana que contiene el 1 de enero es la primera semana del año. Este parámetro puede ser uno de los siguientes valores:
continuo | valor | explique |
---|---|---|
sistema de uso vb | 0 | Configuración mediante la API de NSL |
vbFirstJan1 | 1 | Usar la primera semana, incluido el 1 de enero (predeterminado) |
vbPrimerosCuatroDías | 2 | Utilice la primera semana del año con al menos 4 días |
vbFirstFullWeek | 3 | Utilizar la primera semana completa del año |
devolver los bienes
La función DateDiff devuelve un valor numérico.
aplicar para
La función DateDiff está disponible en las siguientes versiones de Microsoft Access:
- Acceso 2019, Acceso 2016, Acceso 2013, Acceso 2010, Acceso 2007, Acceso 2003, Acceso XP, Acceso 2000
ejemplo
Echemos un vistazo a cómo usar la función DateDiff en MS Access:
DateDiff ("yyyy", #15/10/1998#, #22/11/2003#) Result: 5 DateDiff ("m", #15/10/2003#, #22/11/2003#) Result: 1 DateDiff ("d", #15/10/2003#, #22/11/2003#) Result: 38
Ejemplo en código VBA
La función DateDiff se puede usar en código VBA en Microsoft Access.
Por ejemplo:
Dim LValue As Integer LValue = DateDiff ("d", #15/10/2003#, #22/11/2003#)
En este ejemplo, la variable llamada LValue ahora contendrá el valor 38.
Ejemplo en SQL/Query
También puede utilizar la función DateDiff en una consulta de Microsoft Access.
Por ejemplo:
En esta consulta, usamos la función DateDiff de la siguiente manera:
Expr1: DateDiff('d',[CategoryDate],Date())
y
Expr2: DateDiff('d',#15/10/2003#,#22/11/2003#)
La primera función DateDiff calculará la diferencia en días entre el campo CategoryDate y la hora actual del sistema. Los resultados se mostrarán en una columna denominada Expr1. Puede reemplazar Expr1 con un nombre de columna más significativo.
Por ejemplo:
Difference: DateDiff('d',[CategoryDate],Date())
Los resultados ahora se mostrarán en una columna llamada Diferencia.
La segunda función DateDiff calculará la diferencia en días entre dos fechas: 15/10/2003 y 22/11/2003. Los resultados se mostrarán en una columna llamada Expr2.
Preguntas frecuentes
Pregunta: Soy muy nuevo en Access y me gustaría saber cómo escribir una expresión DateDiff para calcular entre la fecha de vencimiento y hoy y mostrar el número como + en lugar de -. Sigo obteniendo un número negativo. De lo contrario, los números son correctos.
R: Si obtiene una respuesta negativa, hay dos formas de devolver un valor positivo. Primero, puede alternar el valor en la función DateDiff para que la fecha más pequeña aparezca primero. Alternativamente, la función Abs se puede usar para devolver el valor absoluto del resultado.
Por ejemplo, si la siguiente función DateDiff devuelve un valor negativo:
Expr1: DateDiff('d',[Due_Date],Date())
Puede arreglar la función DateDiff usando cualquiera de las siguientes soluciones:
Solución #1 – Cambiar el orden de las fechas
Expr1: DateDiff('d',Date(),[Due_Date])
La función DateDiff devuelve un valor positivo al cambiar el orden de las fechas para que la fecha más pequeña aparezca primero.
Solución #2 – Usa la función Abs
Expr2: Abs(DateDiff('d',[Due_Date],Date()))
Al usar la función Abs en el resultado de la función DateDiff, siempre obtendrá un valor positivo.