Vba: come calcolare i giorni tra due date
È possibile utilizzare la seguente sintassi di base in VBA per calcolare il numero di giorni tra due date:
SubDaysBetweenDates ()
Dim i As Integer
For i = 2 To 7
Range(" C " & i) = DateDiff(" D ", Range(" A " & i), Range(" B " & i))
Next i
End Sub
Questo particolare esempio calcolerà il numero di giorni tra le date nelle celle corrispondenti negli intervalli A2:A7 e B2:B7 e restituirà i risultati nell’intervallo C2:C7 .
Tieni presente che l’argomento “D” nella funzione DateDiff specifica che vogliamo calcolare la differenza di data in termini di giorni.
Fare riferimento alla pagina della documentazione VBA per un elenco completo delle unità che è possibile utilizzare per la differenza di data.
L’esempio seguente mostra come utilizzare questa sintassi nella pratica.
Esempio: calcola i giorni tra le date in VBA
Supponiamo di avere le seguenti due colonne con date in Excel:
Supponiamo di voler calcolare il numero di date tra la data di inizio e la data di fine in ciascuna riga e visualizzare i risultati nella colonna C.
Per fare ciò possiamo creare la seguente macro:
SubDaysBetweenDates ()
Dim i As Integer
For i = 2 To 7
Range(" C " & i) = DateDiff(" D ", Range(" A " & i), Range(" B " & i))
Next i
End Sub
Quando eseguiamo questa macro, riceviamo il seguente output:
Il numero di date tra ciascuna data di inizio e ciascuna data di fine è indicato nella colonna C.
Risorse addizionali
I seguenti tutorial spiegano come eseguire altre attività comuni in VBA:
Come confrontare le date in VBA
Come filtrare una colonna utilizzando VBA
Come ordinare i valori in ordine alfabetico in VBA