Formula per identificare i turni orari

Download PDF

Domanda:

Sto cercando di implementare una formula su Excel per la quale in una cella yy mi restituisca se è un primo, secondo o terzo turno di lavoro, analizzando l’orario immesso nella cella xx. Es, deve restituirmi 1° turno se l’orario nella cella xx è 06:30, ovvero compreso tra le 06:00 e le 14:00.

Risposta:

La questione è abbastanza interessante dato che le ore in Excel non esistono. In realtà è la semplice formattazione della visualizzazione di Excel a fare apparire le ore. Quindi per prima cosa bisogna capire come sono rappresentate le ore in Excel.

Partiamo dai giorni.

Excal usa un numero progressivo per rappresentare i giorni a partire dal 1 gennaio1900  che corrisponde al giorno uno. cosi’ se si formatta una cella in che contiene il numero 1 in formato “data” si ottterrà come data il 1 gennaio 1900. In modo abbastanza interessante se si formatta in formato data una cella che contiene il numero 0 si ottiene lo .. 0 gennaio 1900…

L’algoritmo quindi funziona solo per numeri positivi maggiori di uno. Difficilmente comunque, a meno che non vi occupiate di storia dovrete usare date precedenti al 1/1/1900. Comuqnque sia Excel ha una soluzione anche per gestire queste date. Ma non divaghiamo.

quindi i giorni sono rappresentati da numeri interi progressivi.

Il 1 gennaio 2013 ad esempio corriponde al numero 41275.

bene, come sono rappresentate le ore? semplicemente attraverso i decimail dei numeri!

quindi 41275 corripsonde alla mezzanotte tra il 31.12.2012 e il 01.01.2013 mentre 41275.5 corrisponde al mezzogiorno del 01.01.2013!

sembra complicato? beh non lo é! la formula per trasformare le ore, minuti, secondi nella corretta rappresentazione di Excel è la seguente:

NUMEROEXCEL= (ORE + (MINUTI + SECONDI/60) / 60) / 24

Oppure per farla più facile:

NUMEROEXCEL = ORE/24 + MINUTI/60/24 + SECONDI/60/60/24

se volete recuperare da un numero decimale le corrispondenti ore minuti e secondi potete fare il calcolo all’incontrario attraverso la funzione ARROTONDA oppure usando le funzioni ORA, MINUTO e SECONDO

Bene, siamo pronti per rispondere al nostro lettore.

prima di tutto utilizziamo delle celle in Excel dove rapprentiamo nel formato gradito a Excel stesso gli orari voluti

scrivere quindi in una cella

=6/24+30/60/24

e in una seconda cella:

=14/24

ora prendiamo la cella ce contiene l’ora che dobbiamo verificare e trasformiamola pur’essa nello stesso formato. Qui dipende tutto da come avete l’ora.

A questo punto con i SE potrete verificare se la ora corrente (da verifcare) sia in uno degli intervalli richiesti.

File di esempio: turni_con_le_ore

Qui trovate una lezione di Microsoft sul tema.

The following two tabs change content below.

Andrea Terzaghi

Geneva (CH)
Ingegnere, pellegrino del mondo e della conoscenza, curioso di tutto

Ultimi post di Andrea Terzaghi (vedi tutti)