Programmare le assenze: il piano ferie

La pianificazione delle assenze prevedibili (congedi, aspettative, assenze per studio, ecc) è diventata ormai 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. 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 e la data del Santo Patrono:

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

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 poi inserisci le varie voci codificate dalle sigle.

6. indica quali sigle conteggiare nelle colonne “Residuo” e “Goduto” nei conteggi progressivi 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 le statistiche 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: anche se non viene stampato niente, il codice VBA durante le elaborazioni ha bisogno in più occasioni di dialogare con il driver di stampa e se questo non supporta tutte le chiamate, il VBA va in errore:

Ma non solo, il driver di stampa influenza anche l’impaginazione dei fogli, l’esempio sotto ad esempio mostra un foglio impaginato prima dal driver di OneNote e poi dal driver “Microsoft print to PDF”:

Per questo, dopo aver premuto il tasto “Crea piano ferie”, ma anche in altre occasioni nelle quali il driver di stampa diventa importante, 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 e poi riaprire il piano:

La finestra Funzionalità di Windows 7 a sinistra e Windows 10 a destra

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:

Premi poi “OK” e attendi, dopo 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:

  1. il tasto “Inserisci sigle” fa apparire una finestra di dialogo per l’inserimento rapido delle sigle nelle sole giornate lavorative: i tasti della prima colonna inseriscono una sequenza di sigle che parte dalla cella selezionata e arriva fino all’ultimo giorno della settimana lavorativa spostando poi 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, infine il tasto Scambia inverte due periodi uguali.

    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:
  2. il tasto “Copia foglio” serve per creare velocemente una copia del foglio corrente
  3. 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.
  4. il tasto “Pulisci sigle” serve per ripulire le sigle presenti nel foglio da sigle estranee a quelle presenti nella colonna “Codifiche/Sigle”
  5. il tasto “PDF estrai mese” serve per salvare nel formato PDF il periodo intero o solo una parte di esso, adattato o meno al formato di stampa.

Esempi e download del file

Sotto si possono vedere un paio di esempi ottenuti con pochi clic: un PDF adattato 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 free per uso privato non commerciale:

Piano_ferie_20200615.zip (3499 download)

Buon lavoro!
Marco

Questa voce è stata pubblicata in Excel, Utilità e contrassegnata con , , , , , , , . Contrassegna il permalink.

2 risposte a Programmare le assenze: il piano ferie

  1. Pinco scrive:

    Favoloso!

Lascia un commento

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