Supponiamo di avere dei collaboratori retribuiti a ore e di registrare su un foglio Excel l’ammontare delle ore effettuate mese per mese al fine di realizzare una sorta di monitoraggio dell’andamento delle ore pagate.
Siamo dei tipi precisi e le registrazioni sul file Excel vengono fatte utilizzando il formato orario come nell’immagine seguente:
Ma cosa succederebbe se volessimo avere un colpo d’occhio sull’andamento delle ore, inserendo in una cella una semplice differenza rispetto alle ore del mese precedente?
Assolutamente nulla di strano se le ore di ottobre fossero maggiori delle ore di settembre, ma nel caso dell’immagine precedente Excel si rifiuterebbe di effettuare il calcolo:
Per capire come risolvere il problema dobbiamo fare una premessa.
Come Excel gestisce le date, gli orari e permetta di utilizzarli nei calcoli
Excel, nei suoi calcoli, supporta 2 sistemi data:
- Il sistema data 1900 è quello utilizzato di default. Significa che tutte le date inserite nella cartella di lavoro vengono memorizzati come un numero sequenziale. La data del 1° gennaio 1900 corrisponde al numero seriale 1 e, ad esempio, la data del 10/12/2014 al numero 41983, essendo trascorsi 41982 giorni dal 01/01/1900. E’ l’impostazione predefinita in quanto garantisce piena compatibilità con La visualizzazione in formato data oppure in formato ora di un numero negativo è possibile solo con il sistema data 1904altri fogli di calcolo che girano sotto Windows, come ad esempio Lotus 1-2-3.
- Il sistema data 1904 è invece quello utilizzato di default sulla versione di Excel che gira sotto Macintosh, in quanto in origine garantiva maggiore compatibilità con i primi computer Macintosh non in grado di gestire date anteriori al 02/01/1904. Il 2 gennaio 1904 rappresenta quindi il numero seriale 1 quando venga utilizzato questo sistema data.
La stessa data, nei due sistemi data assume quindi un valore diverso: il valore di una data nel “sistema data 1900” sarà sempre maggiore di 1462 giorni rispetto alla stessa data nel “sistema data 1904”. Essendo dei numeri, le date possono così essere sommate, sottratte ed utilizzate nei calcoli in generale.
Le ore, i minuti e i secondi vengono invece memorizzati come numeri decimali in quanto sono frazioni di un giorno.
La visualizzazione in formato data oppure in formato ora di un numero negativo è possibile solo con il sistema data 1904.
Come cambiare il sistema data di una cartella di lavoro di Excel
Premesso che il sistema data cambia automaticamente nel caso venisse aperto un documento creato con una piattaforma diversa (se io volessi passare un mio file Excel ad un amico che utilizza un Mac, lui aprendolo si troverebbe automaticamente impostato per quella cartella di lavoro il sistema data 1900), è comunque possibile effettuare questa operazione manualmente.
Il percorso per impartire questo comando è il seguente: FILE -> Opzioni -> Impostazioni avanzate -> Durante il calcolo della cartella di lavoro -> Usa sistema data 1904
Confermando tale scelta vedremmo subito che l’errore sul nostro foglio di Excel scomparirebbe
…ma non è tutto rose e fiori
Soluzione alternativa
Raramente Excel ci lascia senza soluzione.
In questo caso la soluzione risiede in un piccolo trucchetto che consiste nel crearci una versione testuale della differenza di data o di orario, utilizzando ad esempio la seguente formula:
=SE(D18-D8<0;"-" & TESTO(ASS(D18-D8);"hh:mm"); D18-D8)
Se la differenza tra i due valori temporali è negativa, concateniamo due valori testuali:
- il primo è rappresentato dal segno – (meno);
- il secondo è il valore assoluto (sempre positivo) della differenza tra i due valori.