Calcolare Giorni Lavorativi Dopo Data Su Excel

Calcolatore Giorni Lavorativi dopo Data in Excel

Calcola facilmente i giorni lavorativi tra due date, escludendo sabati, domeniche e festivi italiani

Risultato:

La data finale dopo 5 giorni lavorativi da 01/01/2023 è:

06/01/2023

Guida Completa: Come Calcolare i Giorni Lavorativi dopo una Data in Excel

Calcolare i giorni lavorativi (escludendo sabati, domeniche e festivi) è un’operazione comune in ambito aziendale per la gestione di scadenze, consegne e pianificazione delle attività. Excel offre diverse funzioni per eseguire questo calcolo in modo preciso, ma è importante conoscerne le sfumature per evitare errori.

Metodo 1: Utilizzo della Funzione LAVORATIVO.GIORNI

La funzione LAVORATIVO.GIORNI (NETWORKDAYS in inglese) è lo strumento principale per questo calcolo. La sua sintassi è:

LAVORATIVO.GIORNI(data_inizio; data_fine; [festivi])

Esempio pratico:

  1. Inserisci la data di inizio in cella A1 (es. 01/01/2023)
  2. Inserisci la data di fine in cella B1 (es. 31/01/2023)
  3. Crea un elenco di festivi in un intervallo (es. D1:D10)
  4. Inserisci la formula: =LAVORATIVO.GIORNI(A1;B1;D1:D10)

Metodo 2: Calcolare una Data Futura con Giorni Lavorativi

Se invece vuoi trovare una data futura aggiungendo un certo numero di giorni lavorativi, puoi usare la funzione LAVORATIVO (WORKDAY):

LAVORATIVO(data_inizio; giorni; [festivi])

Esempio: Per trovare la data 10 giorni lavorativi dopo il 15 marzo 2023:

=LAVORATIVO("15/03/2023"; 10; D1:D10)

Elenco dei Festivi Italiani 2023-2024

Per calcoli precisi, è fondamentale includere tutti i festivi nazionali e regionali. Ecco l’elenco ufficiale:

Data Festività Tipo Regioni Specifiche
1 gennaio Capodanno Nazionale Tutta Italia
6 gennaio Epifania Nazionale Tutta Italia
10 aprile (2023) Pasqua Nazionale Tutta Italia
11 aprile (2023) Lunedì dell’Angelo Nazionale Tutta Italia
25 aprile Festa della Liberazione Nazionale Tutta Italia
1 maggio Festa del Lavoro Nazionale Tutta Italia
2 giugno Festa della Repubblica Nazionale Tutta Italia
15 agosto Ferragosto Nazionale Tutta Italia
1 novembre Ognissanti Nazionale Tutta Italia
8 dicembre Immacolata Concezione Nazionale Tutta Italia
25 dicembre Natale Nazionale Tutta Italia
26 dicembre Santo Stefano Nazionale Tutta Italia
24 giugno San Giovanni Regionale Roma, Torino, Firenze, Genova

Confronto tra Metodi di Calcolo

Ecco un confronto tra diversi approcci per calcolare i giorni lavorativi:

Metodo Precisione Flessibilità Complessità Consigliato per
Funzione LAVORATIVO.GIORNI ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐ Calcoli standard con festivi fissi
Formule personalizzate con SE ⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐ Logiche complesse con eccezioni
VBA (Macro) ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ ⭐⭐⭐⭐⭐ Automazioni avanzate e calcoli ricorrenti
Power Query ⭐⭐⭐⭐ ⭐⭐⭐⭐ ⭐⭐⭐ Analisi di grandi dataset con date

Errori Comuni e Come Evitarli

  • Dimenticare i festivi regionali: Molti utenti includono solo i festivi nazionali, trascurando quelli specifici della loro regione (es. San Giovanni a Firenze). Soluzione: creare un elenco completo dei festivi pertinenti.
  • Formato date errato: Excel potrebbe interpretare male le date se non sono nel formato corretto. Usa sempre il formato GG/MM/AAAA o AAAA-MM-GG per evitare ambiguità.
  • Intervallo festivi non aggiornato: I festivi mobili (come Pasqua) cambiano ogni anno. Aggiorna sempre il tuo elenco di festivi per l’anno corrente.
  • Confondere giorni lavorativi con giorni calendariali: La funzione GIORNI (DAYS) calcola tutti i giorni, mentre LAVORATIVO.GIORNI esclude weekend e festivi.

Automazione con VBA per Calcoli Ricorrenti

Per chi deve eseguire questo calcolo frequentemente, una macro VBA può risparmiare molto tempo. Ecco un esempio di funzione personalizzata:

Function GiorniLavorativi(DataInizio As Date, NumGiorni As Integer, Optional Festivi As Range) As Date
    Dim DataCorrente As Date
    Dim GiorniAggiunti As Integer
    Dim Festivo As Range

    DataCorrente = DataInizio
    GiorniAggiunti = 0

    Do While GiorniAggiunti < NumGiorni
        DataCorrente = DataCorrente + 1

        ' Controlla se è sabato (7) o domenica (1)
        If Weekday(DataCorrente, vbSunday) <> 7 And Weekday(DataCorrente, vbSunday) <> 1 Then
            ' Controlla se è un festivo
            If Not Festivi Is Nothing Then
                For Each Festivo In Festivi
                    If DateValue(Festivo.Value) = DataCorrente Then
                        GoTo SkipDay
                    End If
                Next Festivo
            End If
            GiorniAggiunti = GiorniAggiunti + 1
        End If
SkipDay:
    Loop

    GiorniLavorativi = DataCorrente
End Function
        

Per utilizzarla:

  1. Apri l’editor VBA con ALT + F11
  2. Inserisci un nuovo modulo e incolla il codice
  3. Torna a Excel e usa la formula come =GiorniLavorativi(A1; 10; D1:D20)

Integrazione con Power Query per Analisi Avanzate

Power Query è uno strumento potente per gestire calcoli su grandi dataset. Ecco come calcolare giorni lavorativi tra due date in Power Query:

  1. Carica i tuoi dati in Power Query (Dati → Ottieni dati)
  2. Aggiungi una colonna personalizzata con questa formula M:
    = List.Sum(
        List.Transform(
            {1..Number.From([GiorniTotali])},
            each if Date.IsInNextNDays([DataInizio], _, Day.Monday to Day.Friday)
                 and not List.Contains(Festivi, Date.AddDays([DataInizio], _))
                 then 1 else 0
        )
    )
                    
  3. Assicurati di avere una lista chiamata “Festivi” con tutte le date festive

Fonti Ufficiali e Risorse Utili

Per informazioni aggiornate sui festivi italiani:

Per approfondire le funzioni di Excel:

Domande Frequenti

1. Come gestire i festivi mobili come Pasqua?

Pasqua e il Lunedì dell’Angelo hanno date variabili ogni anno. Puoi calcolare la data di Pasqua con questa formula in Excel:

=DATA(ANNO(A1);4;1)+INT((14-(DATA(ANNO(A1);2;1)-DATA(ANNO(A1);2;1)/7+1)/7)+7)*7-6
        

Dove A1 contiene l’anno di riferimento. Per il Lunedì dell’Angelo, aggiungi 1 giorno alla data di Pasqua.

2. È possibile calcolare i giorni lavorativi tra due date in Google Sheets?

Sì, Google Sheets ha funzioni equivalenti:

  • NETWORKDAYS (equivalente a LAVORATIVO.GIORNI)
  • WORKDAY (equivalente a LAVORATIVO)

La sintassi è identica a quella di Excel.

3. Come gestire i ponti e i giorni di chiusura aziendale?

Per includere giorni di chiusura aziendale specifici (es. chiusura estiva), aggiungili semplicemente all’elenco dei festivi nel terzo argomento delle funzioni LAVORATIVO.GIORNI o LAVORATIVO.

4. Posso calcolare i giorni lavorativi tra due orari specifici?

Le funzioni standard considerano solo le date complete. Per calcoli basati su orari, dovrai:

  1. Arrotondare all’inizio della giornata lavorativa (es. 09:00)
  2. Usare le funzioni standard per il calcolo
  3. Aggiustare manualmente il risultato in base agli orari specifici

5. Esiste un limite al numero di festivi che posso includere?

Excel può gestire fino a 255 argomenti in una formula, ma per gli elenchi di festivi è meglio:

  • Usare un intervallo di celle (es. A1:A50)
  • Per elenchi molto lunghi, considerare l’uso di una tabella Excel
  • In VBA, puoi gestire elenchi praticamente illimitati

Conclusione e Best Practices

Calcolare correttamente i giorni lavorativi è essenziale per:

  • Rispettare le scadenze contrattuali
  • Pianificare le consegne logistiche
  • Gestire i progetti secondo la metodologia Agile
  • Calcolare i termini di prescrizione legale

Consigli finali:

  1. Mantieni sempre aggiornato l’elenco dei festivi per l’anno corrente
  2. Verifica i festivi regionali specifici per la tua area
  3. Usa il formato data ISO (AAAA-MM-GG) per evitare ambiguità
  4. Per calcoli complessi, considera l’uso di VBA o Power Query
  5. Documenta sempre le tue formule per facilitare la manutenzione

Con questi strumenti e conoscenze, sarai in grado di gestire qualsiasi calcolo di giorni lavorativi in Excel con precisione e affidabilità, sia per uso personale che professionale.

Leave a Reply

Your email address will not be published. Required fields are marked *