Programmare le assenze: il piano ferie

La pianificazione delle assenze prevedibili (congedi, aspettative, assenze per studio, ecc) è diventata una pratica comune in tantissime realtà. Di solito, l’incaricato per la stesura del cosiddetto piano ferie spende tempo ed impegno nella progettazione e nella realizzazione di un prospetto che garantisca una programmazione efficiente e una lettura chiara a tutti gli interessati. In questo post mostrerò il software che ho sviluppato per questi scopi e che può tornar utile in diversi contesti.

Caratteristiche del piano ferie

Il sistema di pianificazione è stato creato con uno dei programmi di produttività più usati in ambito aziendale: Microsoft Excel nella versione dedicata ai sistemi operativi Microsoft Windows. Questo software dalle potenzialità straordinarie ha permesso di sviluppare numerose soluzioni automatizzate che ho cercando di implementare mantenendo un margine di adattabilità ad altri contesti.

Le funzionalità principali del software sono:

  • gestione di un grande numero di dipendenti (anche centinaia) con 5 categorie di personale
  • immissione singola dei parametri ripetuti
  • disponibilità di fogli di lavoro per gruppo/ruolo e cumulativo
  • aggiornamento del calendario al nuovo anno tramite clic
  • evidenziazione di weekend e festività
  • adattamento del calendario alla durata della settimana lavorativa
  • adattamento del calendario alla lunghezza del piano
  • adattamento del calendario al numero dei dipendenti
  • 7 tipologie di assenza con la scelta del colore di riempimento associato a ogni sigla
  • immissione rapida delle sigle sui soli giorni lavorativi
  • conteggi progressivi sul periodo complessivo e sul periodo estivo
  • evidenziazione delle rimanenze/eccedenze
  • doppia scelta del formato di stampa A3/A4 con impaginazione automatica
  • compilazione automatica delle intestazioni e dei piè di pagina
  • creazione dei file PDF dei fogli anche solo parziale, con e senza adattamento a tutta pagina
  • riprogrammazione veloce del piano nel corso del periodo
  • statistiche veloci nel corso o alla fine del periodo
  • diverse funzionalità accessorie

Uso del piano ferie

Per usare il piano, è essenziale innanzitutto attivare le macro all’apertura del file, infatti tutte le funzionalità si basano su codice VBA. Sotto si vedono i due passaggi in Excel 2007 per l’attivazione delle macro ma nelle versioni successive la procedura è simile:

All’apertura del file si nota solo il foglio di configurazione con una serie di campi il cui numero, almeno all’inizio, potrebbe disorientare l’utente. Per capire la logica di funzionamento senza perdersi si può seguire l’ordine dei fumetti:

1. indica l’anno di riferimento con le frecce:

Il calendario si adatta automaticamente all’anno di riferimento

2. indica il contesto lavorativo, la data del Santo Patrono e le festività della nazione:

3. configura le impostazioni di ciascun gruppo. Ogni gruppo può essere attivato o disattivato con la spunta che si trova accanto all’indicazione del numero del gruppo, sotto “Gruppo1”. Cliccando sui campi del primo gruppo apparirà un fumetto di spiegazione della funzionalità del campo ma i nomi dei campi sono comunque intuitivi:

4. per ciascun gruppo inserisci i nominativi dei dipendenti e i giorni di congedo spettante mantenendo la struttura prevista della tabella. Per far questo, usa il tasto tab alla fine dell’ultima riga per aggiungere una riga oppure usa il menu Inserisci/Elimina che appare facendo clic destro nel punto desiderato:

Non lasciare celle vuote. Sotto una tabella compilata correttamente usando il cognome e l’iniziale del nome:

5. in “Sigle/Colori” scegli fino a 7 sigle per codificare le assenze e imposta il colore di riempimento che dovranno assumere le celle siglate (è possibile cambiar colori anche in seguito), in “Assenze giornaliere” scegli il formato dei conteggi delle assenze giornaliere quando viene superato il limite fissato precedentemente al punto 3.

Se scegli di aggiungere la legenda ai PDF che potrai creare cliccando sui relativi tasti, assicurati che la spunta accanto a “Legenda” sia presente e inserisci le voci codificate dalle sigle:

6. indica quali sigle conteggiare nelle colonne “Residuo” e “Goduto” che troverai accanto ai tabelloni dei mesi nei fogli creati, quali sigle conteggiare nella colonna “Goduto2” (per esempio, potresti volere conteggiare solo il congedo ordinario e aggiuntivo nella colonna Residuo/Goduto e conteggiare altre assenze di cui ha beneficiato ogni dipendente nella colonna Goduto2) e quali sigle conteggiare sotto i mesi per il calcolo delle assenze giornaliere:

7. completa i campi per il foglio Cumulativo. Se decidi di non usarlo togli la spunta di attivazione, altrimenti puoi cambiare il suo nome, il formato della pagina di stampa e l’inclusione o meno della colonna “Residuo” nei PDF creati (gli altri campi sono un riepilogo sui dati già inseriti):

8. infine premi il pulsante “Crea piano ferie” per iniziare il processo di creazione dei fogli di lavoro:

A questo punto serve capire una cosa per il corretto funzionamento del codice: anche se non viene stampato niente, per i suoi calcoli il codice VBA ha bisogno di dialogare con il driver di stampa in più occasioni e se questo non supporta tutte le chiamate, il VBA va in errore con messaggi di errori come questo:

Ma non solo, il driver di stampa influenza anche l’impaginazione dei fogli, l’esempio sotto mostra un foglio impaginato da “Microsoft print to PDF” e da “OneNote”, nel secondo caso la posizione delle intestazioni non è corretta:

Per questo, dopo aver premuto il tasto “Crea piano ferie”, ma anche in altre occasioni, il codice VBA cerca uno dei due driver raccomandati e se lo trova lo imposta automaticamente:

I due driver raccomandati sono “Microsoft Print to PDF” su Windows 10 e “Microsoft XPS Document Writer” su Windows 7. Se uno dei due non è installato sul sistema, consiglio di installarlo entrando nelle funzionalità di Windows e spuntando l’opzione dedicata prima di creare il piano:

Se non è possibile installare i driver per la mancanza dei diritti di amministratore non rimane che scegliere tra quelli disponibili e fare delle prove per verificare il loro comportamento. Il codice VBA è programmato per verificare la capacità del driver di gestire i formati di pagina, ma non può verificare se questo è in grado di impaginare correttamente le stampe:

Dopo aver comandato la creazione dei fogli e aver atteso qualche istante, che dipende dalla potenza del PC, dovrebbe apparire il messaggio di completamento della routine…

… insieme ai fogli di lavoro pronti per la compilazione (clicca sull’immagine per vederla ingrandita):

Funzionalità generali accessorie

Sotto il pulsante “Crea piano ferie” troverai alcuni tasti le cui funzionalità sono intuitive ma spiegate anche da una finestra che appare premendoli. In particolare:

  1. elimina tutti i fogli creati per ripartire da capo
  2. simula la compilazione di una bozza a scopo dimostrativo
  3. riporta le sigle inserite nei fogli dei gruppi nel foglio cumulativo
  4. mostra o nasconde i conteggi giornalieri sotto le tabelle dei mesi
  5. ripulisce i fogli da qualsiasi sigla
  6. ripulisce i giorni non lavorativi da eventuali sigle presenti
  7. ripulisce i fogli da eventuali sigle diverse da quelle scelte
  8. riassegna una nuova combinazione di colori associati alle sigle
  9. salva il set di fogli di lavoro in formato PDF, con o senza adattamento delle righe al formato di stampa
  10. permette di copiare e incollare il colore di riempimento o del carattere tra celle

Funzionalità nei fogli di lavoro

In ogni foglio di lavoro accanto ai giorni spettanti troverai alcuni tasti:

Il tasto “Inserisci sigle” fa apparire una userform per l’inserimento rapido delle sigle (vedi immagine sotto): i tasti della prima colonna inseriscono una sequenza di sigle che parte dalla cella selezionata e arriva fino all’ultimo giorno della settimana lavorativa e sposta la selezione nel primo giorno della settimana successiva per un nuovo inserimento; i tasti della seconda colonna inseriscono una sigla in ogni giorno lavorativo selezionato (puoi selezionare anche tutto il mese); i tasti per la cancellazione delle sigle funzionano con la stessa logica, e infine il tasto Scambia inverte due periodi uguali.

Qui sotto, dopo aver selezionato la cella del 2 aprile sono bastati due clic sul tasto “Set A” per inserire tutte le sigle nelle due settimane:

Il tasto “Copia foglio” serve per creare velocemente una copia del foglio corrente.

Il tasto “Pulisci mesi” serve per la riprogrammazione del piano nel corso dell’ anno/periodo: per esempio, in ottobre su una copia del foglio si possono ripulire i primi 10 mesi dell’anno, in “Spettante” si inseriscono i giorni spettanti a fine ottobre e si riprogrammano i mesi successivi come meglio si crede.

Il tasto “Pulisci sigle” serve per ripulire le sigle presenti nel foglio da sigle estranee a quelle presenti nella colonna “Codifiche/Sigle” (serve sopratutto in seguito ai copia e incolla da altri file di Excel, come quello della programmazione mensile).

Il tasto “PDF estrai mese” serve per salvare nel formato PDF il periodo intero o solo una parte di esso, adattando il contenuto o meno al formato di stampa.

Esempi e download del file

Sotto si possono vedere un paio di esempi ottenuti con qualche clic: un PDF ancora in bianco e lo stesso PDF con una bozza simulata tramite il tasto “Simula bozza”:

Per considerazioni, chiarimenti, problemi o altro ho inserito il mio indirizzo e-mail anche nel foglio delle impostazioni insieme alle indicazioni rapide per l’uso del piano.

Qui sotto puoi scaricare il file per MS Excel 2007 e successivi rilasciato con licenza freeware per uso privato non commerciale:

Piano_ferie_20230410.zip (11282 download )

Buon lavoro!
Marco

4 pensieri su “Programmare le assenze: il piano ferie

  1. Grazia

    Buongiorno Marco,

    da due anni utilizzo il piano ferie pubblicato da lei, e vorrei ringraziarla, perchè e semplice, intuitivo, immediato e mi e stato davvero di grande aiuto.

    Non riesco a trovare lo stesso file per l’anno 2022.
    Puo’ aiutarmi?

    La ringrazio tanto

    buona giornata


    Grazia

    Rispondi
    1. Marco Autore articolo

      Grazie per gli apprezzamenti. Trova il file che cerca in fondo all’articolo, se invece ha notato qualche anomalia di funzionamento mi segnali pure la cosa in privato.

      Buona giornata
      Marco

      Rispondi

Lascia un commento

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