La gestione dei turni 1: il prospetto della programmazione

Una delle necessità di chi si occupa di gestire dipendenti è avere uno strumento di programmazione e gestione dei turni semplice da usare, veloce da compilare, chiaro da leggere e che fornisca le informazioni necessarie per il rispetto delle esigenze organizzative e delle disposizioni normative. In ultimo lo strumento dovrebbe aiutare a mantenere un ambiente più “sereno” possibile attraverso un’equa distribuzione dei carichi di lavoro.

Uno dei software più potenti e flessibili in questi ambiti è Microsoft Excel. Questo software di produttività, anche se non di utilizzo immediato, offre l’opportunità di trovare soluzioni di aiuto inestimabile che possono velocizzare lunghi e noiosi lavori ripetitivi, rendendoli, se configurato a dovere, privi di errore.

In questa serie di post mostrerò la base del modello che mi sono creato utilizzando Microsoft Excel 2010 durante la mia esperienza di coordinatore in ambito radiologico. Per non dilungarmi troppo, spiegherò brevemente i passaggi e le formule chiave, lasciando al lettore un eventuale approfondimento con la guida di Excel o con una ricerca su Internet.

L’impostazione grafica

Il primo passo è stato creare una griglia dove poter assegnare giorno per giorno il turno di servizio a ogni dipendente. Ho scelto una grafica minimalista e meno impattante possibile ma che fosse ugualmente in grado di aiutare l’occhio nella corretta lettura della programmazione. Nelle prime due colonne ho inserito nomi e cognomi dei collaboratori.

Ho cercato poi di adattare le dimensioni delle celle in modo che il tabellone si adattasse meglio possibile al tipico formato A4 in modo che il foglio fosse stampabile da qualsiasi stampante.

Il calendario mensile

Il secondo passo è stato inserire il calendario mensile. Qui è utile conoscere una nozione: ad impostazioni di default, Excel non permette la gestione delle ore negative e questo più avanti si rivelerà una grossa limitazione. Per aggirare il preblema ho scelto il sistema di data 1904 nelle impostazioni avanzate. In questo modo le ore negative vengono riconosciute correttamente, ma bisogna fare attenzione quando si esce da questo ambiente: per esempio, quando si esporta un foglio in una cartella in cui non è stato preventivamente impostato il sistema di data 1904, le date avranno una differenza di quattro anni e un giorno rispetto all’origine.

Per l’utente inesperto, viene normale inserire le date usando i classici formati di data permessi da Excel, come “21/07/2019” in modo fisso. Al bisogno, magari quando ci stiamo preparando a stendere il turno per il mese successivo, bisogna cambiare tutte le date manualmente per adattarle al nuovo mese. È possibile però sgravarci da questo impegno tramite la funzione DATA. Vediamo come.

La funzione DATA crea una data usando tre valori: anno, mese e giorno. Ora, se in una cella inseriamo l’anno e in un’altra cella il numero del mese, è possibile cambiare solo queste due celle per cambiare automaticamente tutte le date che dipendono da essa.

Prima di vedere l’applicazione della funzione DATA, un’altra nozione: Excel conosce i giorni della settimana, quello che non conosce sono i giorni festivi di ogni nazione. Per fornirgli questa informazione bisogna inserire l’elenco delle festività italiane, Santo patrono compreso, da usare poi nelle formule.

Con la funzione DATA ho inserito così l’elenco dei giorni festivi in un foglio nuovo: prima ho inserito la cella dell’anno, cella che ho denominato con la parola “Anno” e poi ho inserito le date. Le formule sono tutte semplici perché le date delle festività italiane sono tutte fisse, cioè cadono tutti gli anni nello stesso giorno. Ad esempio Natale cade sempre il 25 dicembre, quindi la formula è “=DATA(Anno,12,25)”. La Pasqua è l’unica data variabile e molto complessa da calcolare. Ho risolto con una formula abbastanza rara trovata in Internet che funziona con qualsiasi impostazione di data di Excel.

Nello screenshot sotto si vede l’elenco delle festività, in alto a destra la formula usata per il Capodanno e in alto a sinistra il nome “FEST” dato all’intervallo A2:A14 per creare un riferimento all’elenco semplice da usare nelle formule:

Allo stesso modo con la funzione DATA ho inserito il calendario nel tabellone dei turni. Così, dopo aver inserito nella cella B4 il numero del mese impostando il testo in bianco per nascondere il numero, ho inserito nel primo giorno del mese la formula “=DATA(Anno; B4;1)” e ho impostato il formato di data personalizzato “g” in modo da vedere solo il numero del giorno. Nel secondo giorno ho inserito la formula che aggiunge un giorno alla data precedente “=C4+1” e poi ho trascinato questa cella fino al 31 del mese. Bisogna ricordare che in Excel le date sono gestite tramite numeri sequenziali: nel sistema di data 1904, il numero 1 è il 1 gennaio 1904, il 2 è il 2 gennaio 1904, e così via.

Nella cella sotto il primo giorno del mese, per mostrare il giorno della settimana ho usato la formula “=MAIUSC(SINISTRA(TESTO(C4;”gggg”);2))” e poi l’ho trascinata fino al 31 del mese. In seguito ho formattato tutte le celle del tabellone con Allinea al centro, verticalmente e orizzontalmente.

Per l’indicazione del mese e dell’anno, ho inserito in N2 la formula “=MAIUSC(TESTO(C4;”mmmm aaaa”))” e ho formattato a mio piacimento.

Sotto il risultato a questo punto, nel calendario si nota che gli ultimi due giorni del mese appartengono ad un altro mese:

A questo punto ho usato una delle funzioni più interessanti di Excel: la formattazione condizionale (FC). Io la uso principalmente per due scopi: rendere evidente una cella rispetto a quelle adiacenti con colori non impattanti e rendere evidenti anomalie con il rosso, ma non solo.

È difficile spiegare la FC in poche parole, iniziamo con delle nozioni che aiuteranno a capire come funziona:

  • Excel attiva la formattazione scelta se il risultato della formula immessa è VERO (vale a dire 1), non la attiva se il risultato è FALSO (vale a dire 0)
  • Excel risolve le formule nidificate partendo dalla più interna
  • con la funzione E devono essere soddisfatte tutte le condizioni
  • con la funzione O deve essere soddisfatta solo una delle condizioni

Per inserire una regola di FC, bisogna selezionare la cella o l’intervallo, aprire la finestra di gestione delle regole di FC e inserire la formula nell’apposita finestra. Tale formula deve sempre far riferimento alla prima cella selezionata.

Nelle formule bisogna far attenzione all’uso dei riferimenti assoluti contrassegnati con il segno “$”! Provate a sperimentare cosa comporta contrassegnare solo la colonna, solo la riga o entrambi per capire il funzionamento.

La funzione GIORNO.SETTIMANA restituisce il giorno della settimana corrispondente a una data (con numeri da 1, lunedì, a 7, domenica, usando l’argomento “2”), mentre la funzione CONTA.SE conta il numero di celle che soddisfano un determinato criterio: come detto 1 corrisponde a VERO.

La prima regola evidenzia i giorni di domenica o festivi nelle prime due righe. Selezionato l’intervallo C4:AG5, ho inserito la formula: “=O(GIORNO.SETTIMANA(C$4;2)=7;CONTA.SE(FEST;C$4))” con effetto di testo in rosso. La formula restituisce VERO quando la data corrisponde a domenica (7) oppure è presente nell’intervallo FEST.

La seconda regola di formattazione condizionale, simile alla prima, evidenzia su tutto il tabellone le giornate che cadono di sabato oppure di domenica oppure sono festive: selezionato l’intervallo C4:AG22 ho inserito la formula “=O(GIORNO.SETTIMANA(C$4;2)>5;CONTA.SE(FEST;C$4))” con effetto di riempimento grigio. La funzione GIORNO.SETTIMANA restituisce VERO quando la data corrisponde a un giorno maggiore di 5, vale a dire 6 (sabato) o 7 (domenica).

La terza regola restituisce VERO quando le date appartengono al mese successivo. La formula MESE restituisce il numero del mese di una data, per cui la formula “=MESE($C$4)<>MESE(AE$4)” imposta all’intervallo AE4:AG22 (tutti i mesi hanno almeno 28 giorni) dice a Excel: quando il numero del mese nelle celle da AE4 in avanti è differente (<>) dal numero del mese nella cella C4, attiva la FC colorando il bordo superiore, inferiore e destro in bianco, cancellando di fatto i bordi grigi.

Similmente la quarta regola di formattazione condizionale evita di mostrare il calendario se le date appartengono al mese successivo: selezionato l’intervallo AE4:AG22 ho inserito la formula “=MESE($C$4)<>MESE(AE$4)” con effetto del testo in bianco.

Sotto il foglio risultante con la FC applicata:

Gli ultimi dettagli

A questo punto non è rimasto che aggiungere la leggenda con gli orari associati alle sigle e aggiungere nei campi del pié di pagina e delle intestazioni le informazioni che volevo far apparire sulla stampa finale, con i colori e le dimensioni del testo che mi sembravano opportuni.

Automazione

Strutturando il foglio in questa maniera, è possibile variare direttamente il numero del mese nella cella B4 per adattare in automatico il calendario al nuovo mese ed è possibile variare la cella con l’anno ed il file è già pronto per l’anno successivo.

Ancora più comodo, si può aggiungere un tasto di selezione collegato alla cella B4 e variare il calendario con un singolo clic (scheda sviluppo > Inserisci > Controlli modulo > Casella di selezione > trascinare sul foglio.

Entrare nelle opzioni con un clic destro per impostare il riferimento alla cella B4 e per gli altri dettagli). Stessa cosa si può fare con l’anno.

Buon lavoro!

Qui potete scaricare il file usato per l’articolo: Turni-Post1.xlsx (5759 download )

2 pensieri su “La gestione dei turni 1: il prospetto della programmazione

  1. JESSICA ADELFI

    BUONGIORNO,
    VORREI RINGRAZIARE PER L’UTILISSIMO FOGLIO EXCEL, CHE VOGLIO UTILIZZARE IN AZIENDA PER SEGUIRE LE PRESENZE DEI DIPENDENTI.
    UNA DOMANDA , QUANDO INSERISCO QUALCOSA IN UNA CELLA DI GENNAIO, TIPO A(ASSENZA) AUTOMATICAMENTE ME LA MANTIENE IN TUTTI I MESI SUCCESSIVI. COME POSSO FARE PER COMPILARE LE CELLE MESE PER MESE?
    GRAZIE MILLE

    Rispondi
    1. Marco Autore articolo

      Se ho capito bene sta cercando un sistema per eliminare le sigle già presenti nel foglio al cambio di mese. Il sistema più semplice è selezionare l’area e premere CANC oppure registrare una macro e eventualmente assegnarle un pulsante per farlo con un clic. Non faticherà a trovare i passaggi per riuscirci nella guida o in rete.

      Grazie per gli apprezzamenti.

      Rispondi

Rispondi a Marco Annulla risposta

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *