=OGGI() restituisce la data di oggi e =ADESSO() restituisce la data e l'ora correnti. OGGI (in inglese TODAY) e ADESSO (in inglese NOW) non accettano argomenti, ed entrambe si aggiornano ogni volta che la cartella di lavoro si ricalcola, quindi il valore che vedi oggi domani sarà diverso. Per una data che non cambia mai, premi invece Ctrl+; (Control+; su Mac). La tabella mostra le formule in inglese, ma puoi scriverle anche in italiano, con il punto e virgola: =RESTO(ADESSO();1).
| A | B | |
|---|---|---|
| 1 | TODAY | NOW |
| 2 | 2026-10-04 | 2026-10-04 9:22 |
=OGGI()La tabella qui sopra mostra data e ora al caricamento della pagina. A ogni ricalcolo del foglio, ADESSO passa al minuto corrente, mentre OGGI cambia solo una volta al giorno, a mezzanotte. Le parentesi sono obbligatorie: =OGGI senza parentesi restituisce #NOME? (in inglese #NAME?; la tabella mostra i nomi inglesi degli errori).
Giorni che mancano a una data
OGGI() è un numero di giorni come qualsiasi altra data, quindi sottrarlo dà un conto alla rovescia. =B2-OGGI() sono i giorni che mancano alla data in B2, e =OGGI()-B2 i giorni trascorsi da essa.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Task | Deadline | Days left | Status |
| 2 | Report | 2026-12-31 | 88 | Open |
| 3 | Audit | 2027-03-15 | 162 | Open |
| 4 | Budget | 2025-11-30 | -308 | Overdue |
=B2-OGGI()I numeri della colonna C scendono di uno ogni giorno. La scadenza del budget è passata, quindi il suo conteggio è negativo e lo stato dice Overdue. Per contare invece i giorni lavorativi rimasti, usa =GIORNI.LAVORATIVI.TOT(OGGI();B2) (vedi GIORNI.LAVORATIVI.TOT e GIORNO.LAVORATIVO).
OGGI dentro altre formule
Ovunque una formula abbia bisogno di una data, OGGI() può essere quella data: l'anno corrente, la fine di questo mese, una data tra 30 giorni o l'età di una persona (calcolare l'età).
| A | B | |
|---|---|---|
| 1 | What | Formula |
| 2 | Year | 2026 |
| 3 | Month | 10 |
| 4 | End of this month | 2026-10-31 |
| 5 | In 30 days | 2026-11-03 |
| 6 | First of this month | 2026-10-01 |
=FINE.MESE(OGGI();0)B5 si sposta ogni giorno; B3, B4 e B6 si spostano il primo di ogni mese, e B2 il 1 gennaio. FINE.MESE (in inglese EOMONTH) con -1 restituisce l'ultimo giorno del mese precedente, quindi aggiungere 1 porta al primo di questo mese.
L'ora corrente senza la data
ADESSO() contiene la data come numero intero e l'ora come frazione: mezzogiorno è 0,5 di un giorno. =RESTO(ADESSO();1) (RESTO è MOD in inglese) tiene la frazione, cioè la sola ora. Formatta la cella come h:mm per vederla come orario, oppure usa TESTO per un'etichetta.
| A | B | C | |
|---|---|---|---|
| 1 | Time | As text | Hour |
| 2 | 9:22 | 9:22 | 9 |
=RESTO(ADESSO();1)A2 è un numero (una frazione di giorno) mostrato come ora, quindi si può usare nei calcoli con le ore; B2 è testo e non si può. C2 è l'ora come numero intero da 0 a 23.
Inserire una data o un'ora che non cambia
OGGI e ADESSO sono sbagliate per tutto ciò che registra quando è successo qualcosa, come un registro degli ordini o un modulo firmato, perché domani ogni riga mostrerebbe la data di domani. Inserisci invece un valore fisso:
| Inserire | Windows | Mac |
|---|---|---|
| La data di oggi | Ctrl+; | Control+; |
| L'ora corrente | Ctrl+Maiusc+; | Command+; |
| Data e ora | Ctrl+;, Spazio, Ctrl+Maiusc+; | Control+;, Spazio, Command+; |
Per bloccare una formula già presente, copia le celle, poi Home > Incolla > Incolla valori (Windows: Ctrl+Alt+V, poi V e Invio; Mac: Control+Command+V, poi Valori). La formula viene sostituita dalla data che mostrava in quel momento.
Esercizio: giorni rimasti con una data fissa
Per l'esercizio, la tabella qui sotto usa una data di riferimento fissa in E2 al posto di OGGI(), così la risposta è la stessa ogni giorno. Nella tua cartella di lavoro scriveresti OGGI() dove questa formula legge E2.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Task | Deadline | Days left | As of | |
| 2 | Launch | 2026-11-20 | 2026-10-01 |
Tocca a te: In C2, calcola quanti giorni mancano dalla data in E2 alla scadenza in B2.
Perché OGGI e ADESSO continuano a cambiare
OGGI, ADESSO, CASUALE e SCARTO sono funzioni volatili: Excel le ricalcola ogni volta che cambia qualcosa nella cartella di lavoro, quando il file si apre e quando premi F9. È ciò che tiene aggiornato un conto alla rovescia, e ha due effetti collaterali:
- Excel chiede di salvare le modifiche quando chiudi un file che hai solo guardato, perché le celle volatili si sono ricalcolate.
- Una cartella di lavoro grande con migliaia di celle OGGI() può diventare lenta. Metti
=OGGI()in una sola cella, per esempio$H$1, e fai puntare lì le altre formule.
Se la data mostrata è sbagliata, controlla l'orologio del computer: OGGI legge la data di sistema. Se non si aggiorna, la cartella di lavoro potrebbe essere in modalità di calcolo manuale: Formule > Opzioni di calcolo > Automatico.
Domande frequenti
Come si inserisce la data di oggi in Excel?
Scrivi =OGGI() per una data che si aggiorna ogni giorno, oppure premi Ctrl+; (Control+; su Mac) per la data di oggi come valore fisso che non cambia mai.
Che differenza c'è tra OGGI e ADESSO in Excel?
=OGGI() restituisce solo la data, come numero intero di giorni. =ADESSO() restituisce la data e l'ora corrente, con l'ora come parte decimale. Entrambe si ricalcolano ogni volta che si ricalcola la cartella di lavoro.
Come si calcolano i giorni che mancano a una data in Excel?
Sottrai oggi dalla data: =B2-OGGI(). Il risultato scende di uno ogni giorno e diventa negativo quando la data è passata.
Come si impedisce a OGGI() di cambiare?
Non puoi fermare la formula, ma puoi sostituirla con il suo valore: copia la cella, poi Home > Incolla > Incolla valori. Oppure inserisci la data fin dall'inizio con Ctrl+;.
Come si inserisce l'ora corrente in Excel?
Premi Ctrl+Maiusc+; (Command+; su Mac) per l'ora come valore fisso. Come formula, =ADESSO() dà data e ora, e =RESTO(ADESSO();1) solo l'ora, con il formato h:mm.