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

di Gianfranco Budano

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.