Microsoft Access: come calcolare il tempo che intercorre fra due date

di Gianfranco Budano

Pubblicato 5 Settembre 2007
Aggiornato 12 Febbraio 2018 20:45

Può capitare di aver bisogno di calcolare il tempo passato fra due date. Con Microsoft Access esiste una funzione denominata DateDiff.

Per fare ciò creiamo una query di selezione e aggiungiamo una tabella nella quale sono presenti i due campi di tipo data/ora che ci interessano. Nel nostro esempio calcoleremo il tempo fra i due campi datav1 e datav2:

Nella colonna a fianco scriviamo la formula che effettua il calcolo della differenza di tempo che intercorre fra le due date, la sintassi è la seguente:

DateDiff («intervallo»; «data1»; «data2»)

L’argomento intervallo va impostato secondo le seguenti modalità:

Impostazione Descrizione
aaaa Anno
t Trimestre
m Mese
a Giorno dell’anno
g Giorno
w Giorno della settimana
ww Settimana
h Ora
n Minuti
s Secondi

Procediamo quindi con la scrittura della funzione nella prima colonna disponibile, nomineremo il nuovo campo Differenza:

Differenza: DateDiff('g';[datev1];[datev2])

Notate alcuni particolari:

  1. abbiamo scelto di calcolare la differenza intercorrente in giorni;
  2. l’argomento intervallo è racchiuso fra due apostrofi; è fondamentale che venga scritto in questo modo, diversamente Access non riuscirà ad effettuare il calcolo;
  3. è buona norma racchiudere sempre i campi dinamici (nel nostro caso [datev1] e [datev2]) fra parentesi quadre come la sintassi di Access prevede;
  4. per calcolare la differenza secondo altri parametri (ad esempio in secondi) sarà sufficiente sostituire l’argomento della funzione.