Come si calcola la percentuale trascorsa tra due date in Excel?
Quando si gestiscono progetti in corso o si monitora l’avanzamento di attività pianificate in Excel, è spesso necessario calcolare la percentuale della durata di un compito già trascorsa rispetto alla data odierna. Questo permette di valutare rapidamente se i progetti sono in anticipo, in linea con il piano o in ritardo, esprimendo il tempo trascorso come quota percentuale della durata totale prevista. Ad esempio, potresti avere un foglio di lavoro contenente attività, ciascuna con una data di inizio e una data di fine. Alla data odierna, vorrai sapere quale percentuale del periodo pianificato per ogni attività è già trascorsa. Questo tutorial ti illustrerà metodi pratici per ottenere questo risultato in Excel, ti mostrerà come automatizzare l’aggiornamento delle percentuali di avanzamento e come evidenziare visivamente le attività in base a tali risultati utilizzando la formattazione condizionale.
Lo screenshot seguente mostra un elenco di esempio di attività con una Data di inizio, una Data di fine e la percentuale di completamento calcolata desiderata:

- Calcolare la percentuale di completamento tra due date con una formula
- Codice VBA – Automatizza il calcolo percentuale per un aggiornamento dinamico su righe e date
Calcolare la percentuale di completamento tra due date con una formula
Per calcolare la percentuale di completamento di un’attività tra due date, puoi utilizzare una formula basata sulle funzioni DATEDIF e OGGI di Excel. Questo approccio è ideale se gestisci un numero limitato di attività e il tuo set di dati non subisce aggiornamenti frequenti.
1. Inserisci la seguente formula in una cella vuota della riga in cui desideri visualizzare il risultato (ad esempio, nella cella)D2):
=(DATEDIF(B2,TODAY(),"d")+1)/(DATEDIF(B2,C2,"d")+1) Spiegazione dei parametri:
B2 è la cella con la data di inizio dell’attività e C2 è la cella con la data di fine. OGGI() restituisce automaticamente la data odierna, quindi la formula calcola quanti giorni sono trascorsi dall’inizio dell’attività divisi per la durata totale pianificata.
2. Dopo aver inserito la formula, trascina il quadratino di riempimento verso il basso per applicarla a tutte le righe necessarie. In questo modo, ogni riga mostrerà automaticamente il completamento attuale dell’attività in base alla data odierna. L’esempio seguente illustra questa applicazione su diverse attività:

3. Seleziona tutte le celle calcolate. Vai alla scheda Home, quindi fai clic sul pulsante Stile percentuale nel gruppo Numero per visualizzare i valori come percentuali anziché decimali. Puoi regolare ulteriormente il numero di posizioni decimali utilizzando i pulsanti Aumenta decimali e Riduci decimali per ottenere la precisione desiderata.

Avvertenze: Questo approccio è estremamente flessibile, ma assicurati che tutte le celle contenenti date siano formattate come date effettive in Excel; in caso contrario, potresti incorrere in errori o ottenere valori errati.
Se desideri che i risultati vengano aggiornati automaticamente ogni giorno, OGGI()garantisce che, ogni volta che la cartella di lavoro viene ricalcolata o aperta, la percentuale rifletta l’avanzamento corrente. Tuttavia, fai attenzione: se utilizzi valori statici inseriti manualmente (invece di)OGGI()), dovrai aggiornare manualmente tali date man mano che il tempo passa.
Codice VBA – Automatizza il calcolo percentuale per un aggiornamento dinamico su righe e date
Se il tuo foglio di lavoro contiene numerose attività con data di inizio e data di fine definite, puoi utilizzare VBA per calcolare automaticamente la percentuale di avanzamento di ciascuna attività in base alla data odierna. Questo approccio è ideale per aggiornare dinamicamente lo stato di avanzamento su più righe, senza dover inserire manualmente formule di riempimento. La macro analizza ogni riga, confronta la data odierna con la data di inizio e la data di fine dell’attività e calcola il tempo trascorso come percentuale della durata totale. Il risultato viene quindi inserito in una colonna dedicata, offrendoti un’istantanea chiara e immediata dello stato di avanzamento di ogni attività.
1. Premi Alt + F11 per aprire l’editor di Microsoft Visual Basic, Applications. Nell’editor VBA, vai su Inserisci > Modulo per creare un nuovo modulo, quindi incolla il seguente codice:
Sub UpdateTaskCompletionPercent()
'Updated by Extendoffice 20250724
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Dim StartDateCol As String, EndDateCol As String, PercentCol As String
Dim startDate As Variant, endDate As Variant, todayDate As Date
Dim pct As Double
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set ws = Application.ActiveSheet
' Adjust these column letters as needed
StartDateCol = "B"
EndDateCol = "C"
PercentCol = "D"
todayDate = Date
lastRow = ws.Cells(ws.Rows.Count, StartDateCol).End(xlUp).Row
For i = 2 To lastRow ' Skip header
startDate = ws.Cells(i, StartDateCol).Value
endDate = ws.Cells(i, EndDateCol).Value
If IsDate(startDate) And IsDate(endDate) Then
If endDate >= startDate Then
If todayDate < startDate Then
pct = 0
ElseIf todayDate >= endDate Then
pct = 1
Else
pct = (todayDate - startDate + 1) / (endDate - startDate + 1)
End If
ws.Cells(i, PercentCol).Value = pct
ws.Cells(i, PercentCol).NumberFormat = "0.00%"
Else
ws.Cells(i, PercentCol).Value = "Invalid dates"
End If
Else
ws.Cells(i, PercentCol).Value = "Date error"
End If
Next i
End Sub 2. Dopo aver inserito il codice, premi F5(o fai clic sul)
pulsante Esegui) per avviare lo script. Questa operazione batch riempirà immediatamente la colonna delle percentuali (D) per ogni riga in base alle date correnti.
Note e risoluzione dei problemi:
- Se conservi i dati dei tuoi compiti in colonne diverse, modifica
StartDateCol,EndDateColePercentColnel codice in modo che corrispondano al layout del tuo foglio. - Se lo script visualizza «Errore data» o «Date non valide», controlla la presenza di righe vuote, voci con date errate oppure date di inizio e fine sovrapposte o non corrette.
- Questo approccio garantisce che i tuoi calcoli percentuali restino sempre accurati e aggiornati per tutti i compiti, in particolare dopo modifiche massicce dei dati o quando importi informazioni da altre fonti.
Questa soluzione VBA è ideale per preparazioni ricorrenti di dati e report automatizzati, dove la copia manuale delle formule risulterebbe inefficiente.
Altri articoli correlati alle percentuali:
- Calcolare il prezzo originale dallo sconto percentuale
- Di solito, nella vita quotidiana, alcuni prodotti vengono scontati nei centri commerciali. Se si conoscono il prezzo scontato e la percentuale di sconto, come illustrato nello screenshot seguente, come si calcola il prezzo originale di quel prodotto in Excel?
- Calcolare la percentuale dell’anno o del mese trascorsa
- Supponiamo che tu abbia un elenco di date in un foglio di lavoro e che ora tu voglia calcolare la percentuale dell’anno o del mese già trascorsa o ancora residua in base a ciascuna data specificata. Come puoi portare a termine questo compito in Excel?
- Calcolare la percentuale di «Sì» e «No» da un elenco
- Come calcolare la percentuale di risposte «Sì» e «No» in un intervallo di celle di un foglio Excel? Questo articolo potrebbe aiutarti a portare a termine il compito.
- Creare un grafico con entrambe le percentuali e i valori
- È facile aggiungere percentuali o valori alle barre o ai grafici a colonne, ma hai mai provato a creare un grafico a barre o a colonne in cui siano visualizzati contemporaneamente sia la percentuale che il valore in Excel?
- Usare CONTA.SE per calcolare la percentuale in Excel
- Ad esempio, ho un rapporto riassuntivo di un articolo di ricerca con tre opzioni: A, B e C. Ora voglio calcolare la percentuale di ciascuna di queste opzioni — in altre parole, capire che quota percentuale rappresenta l’opzione A rispetto al totale. In questo articolo ti mostrerò come ottenere la percentuale di un’opzione specifica all’interno di un intervallo.
I migliori strumenti per la produttività in ufficio
Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività del 80 %
- Super Barra delle formule (modifica facilmente più righe di testo e formule); Layout di lettura (leggi e modifica con facilità un gran numero di celle); Incolla in Intervallo di filtro...
- Unisci celle/righe/colonne e conserva i dati; dividi il contenuto delle celle; combina righe duplicate e calcola somma/media…; previeni voci duplicate; confronta intervalli…
- Seleziona duplicati o valori univoci nelle righe; Seleziona righe vuote (tutte le celle sono vuote); Super Trova e ricerca fuzzy in molte cartelle di lavoro; selezione casuale…
- Copia esatta di celle multiple senza modificare i riferimenti delle formule; creazione automatica di riferimenti a più fogli; inserisci punti elenco, caselle di controllo e molto altro...
- Formule preferite e inserimento rapido, intervalli, grafici e immagini; crittografa le celle con password; crea un elenco di invio e invia email...
- Estrai testo, aggiungi testo, rimuovi caratteri da una posizione specifica, elimina spazi; crea e stampa statistiche dei dati della pagina; converti il contenuto delle celle in commenti e viceversa...
- Super Filtri (salva e applica schemi di filtro ad altri fogli); Ordinamento avanzato per mese, settimana, giorno, frequenza e molto altro; Filtro speciale per grassetto, corsivo…
- Combina cartelle e fogli di lavoro; unisci tabelle in base a una colonna chiave; suddividi i dati in più fogli; converti in batch file xls, xlsx e PDF...
- Raggruppa la tabella pivot per numero di settimana, giorno della settimana e altro ancora...Mostra le celle sbloccate e blocca la selezione con colori diversi;Evidenzia le celle contenenti formule o nomi...
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in finestre separate.
- Aumenta la tua produttività del 50 % e riduci centinaia di clic del mouse ogni giorno!