Calcolatore Giorni Lavorati con Excel
Calcola facilmente i giorni lavorati tra due date, escludendo festivi e weekend
Guida Completa: Come Calcolare i Giorni Lavorati con Excel
Calcolare i giorni lavorati tra due date è un’operazione comune in ambito lavorativo, soprattutto per la gestione delle presenze, dei progetti o delle scadenze contrattuali. Excel offre diversi metodi per eseguire questo calcolo in modo preciso, tenendo conto dei weekend e dei giorni festivi.
Metodo 1: Funzione GIORNI.LAVORATIVI.TOT
La funzione GIORNI.LAVORATIVI.TOT è lo strumento più potente di Excel per calcolare i giorni lavorativi tra due date. La sua sintassi è:
=GIORNI.LAVORATIVI.TOT(data_inizio; data_fine; [festivi])
Dove:
- data_inizio: la data di inizio del periodo
- data_fine: la data di fine del periodo
- [festivi]: (opzionale) un intervallo di celle contenente le date dei giorni festivi
Esempio pratico:
- Inserisci le date in due celle (es. A1 e B1)
- Crea un elenco di festivi in un intervallo (es. D1:D10)
- Usa la formula:
=GIORNI.LAVORATIVI.TOT(A1; B1; D1:D10)
Metodo 2: Funzione GIORNI con aggiustamenti manuali
Se preferisci un approccio più manuale, puoi usare la funzione GIORNI e poi sottrarre weekend e festivi:
=GIORNI(data_fine; data_inizio) - (INT((GIORNI(data_fine; data_inizio)-1)/7)*2) - CONTA.SE(intervallo_festivi; ">="&data_inizio) - CONTA.SE(intervallo_festivi; "<="&data_fine) + 1
Questa formula:
- Calcola prima i giorni totali
- Sottrae i weekend (2 giorni per ogni settimana completa)
- Sottrae i festivi che cadono nel periodo
Elenco dei Giorni Festivi in Italia (2024)
| Data | Nome Festività | Tipo |
|---|---|---|
| 1 gennaio | Capodanno | Nazionale |
| 6 gennaio | Epifania | Nazionale |
| 9 aprile | Pasqua | Mobile |
| 10 aprile | Lunedì dell'Angelo | Mobile |
| 25 aprile | Festa della Liberazione | Nazionale |
| 1 maggio | Festa del Lavoro | Nazionale |
| 2 giugno | Festa della Repubblica | Nazionale |
| 15 agosto | Ferragosto | Nazionale |
| 1 novembre | Ognissanti | Nazionale |
| 8 dicembre | Immacolata Concezione | Nazionale |
| 25 dicembre | Natale | Nazionale |
| 26 dicembre | Santo Stefano | Nazionale |
Confronti Internazionali
Il numero di giorni festivi varia significativamente tra i paesi. Ecco una comparazione:
| Paese | Giorni Festivi (2024) | Giorni Lavorativi Annui | Note |
|---|---|---|---|
| Italia | 12 | 251 | Inclusi festivi mobili |
| Francia | 11 | 252 | 1 maggio sempre festivo |
| Germania | 9-13 | 250-254 | Varia per stato federale |
| Spagna | 12-14 | 250-252 | Dipende dalla regione |
| USA | 10-11 | 260-261 | Nessun festivo obbligatorio |
| Giappone | 16 | 245 | Molti festivi culturali |
Errori Comuni da Evitare
- Formato date errato: Assicurati che Excel riconosca le celle come date (formato gg/mm/aaaa)
- Intervallo festivi incompleto: Includi tutti i festivi nazionali e regionali rilevanti
- Domeniche come festivi: Non duplicare i giorni già esclusi come weekend
- Anni bisestili: Verifica che il 29 febbraio sia correttamente gestito
- Fusi orari: Se lavori con date internazionali, standardizza il fuso orario
Automazione con VBA
Per utenti avanzati, è possibile creare una funzione personalizzata in VBA:
Function GiorniLavorativi(DataInizio As Date, DataFine As Date, Optional Festivi As Range) As Long
Dim GiorniTotali As Long
Dim i As Long
Dim DataCorrente As Date
Dim GiornoSettimana As Integer
GiorniTotali = 0
DataCorrente = DataInizio
Do While DataCorrente <= DataFine
GiornoSettimana = Weekday(DataCorrente, vbMonday)
If GiornoSettimana < 6 Then ' Lunedì-Venerdì
If Not IsEmpty(Festivi) Then
If Application.WorksheetFunction.CountIf(Festivi, DataCorrente) = 0 Then
GiorniTotali = GiorniTotali + 1
End If
Else
GiorniTotali = GiorniTotali + 1
End If
End If
DataCorrente = DataCorrente + 1
Loop
GiorniLavorativi = GiorniTotali
End Function
Questa funzione può essere richiamata direttamente nel foglio di lavoro come una normale formula di Excel.
Risorse Ufficiali
Per informazioni aggiornate sui giorni festivi:
- Gazzetta Ufficiale della Repubblica Italiana - Elenco ufficiale festività nazionali
- Eurostat - Dati comparativi sui giorni lavorativi in UE
- Organizzazione Internazionale del Lavoro (ILO) - Standard globali su orari di lavoro
Domande Frequenti
Come gestire i festivi regionali?
Aggiungi semplicemente le date dei festivi regionali al tuo elenco nell'intervallo [festivi] della funzione GIORNI.LAVORATIVI.TOT. Ad esempio, per la Toscana aggiungerai il 30 novembre (Festa della Toscana).
Posso calcolare i giorni lavorativi tra due orari specifici?
Sì, puoi combinare la funzione GIORNI.LAVORATIVI.TOT con ORARIO per calcolare le ore lavorative. Ad esempio, per un orario 9-18:
=GIORNI.LAVORATIVI.TOT(A1;B1)*9
Come gestire i ponti?
Excel non gestisce automaticamente i "ponti" (giorni tra un festivo e un weekend). Dovrai aggiungerli manualmente all'elenco dei festivi o creare una regola condizionale.
Esiste un limite al numero di festivi che posso inserire?
Teoricamente no, ma per prestazioni ottimali è consigliabile non superare le 1000 date nell'intervallo [festivi].
Come calcolare i giorni lavorativi tra due date in anni diversi?
La funzione GIORNI.LAVORATIVI.TOT gestisce automaticamente il passaggio tra anni. Assicurati solo che l'intervallo [festivi] includa tutte le date rilevanti per entrambi gli anni.