Vba: jak obliczyć dni między dwiema datami
Aby obliczyć liczbę dni między dwiema datami, możesz użyć następującej podstawowej składni w języku VBA:
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
Ten konkretny przykład obliczy liczbę dni pomiędzy datami w odpowiednich komórkach w zakresach A2:A7 i B2:B7 i zwróci wyniki w zakresie C2:C7 .
Należy zauważyć, że argument „D” w funkcji DateDiff określa, że chcemy obliczyć różnicę dat w dniach.
Pełną listę jednostek, których można użyć do określenia różnicy dat, można znaleźć na stronie dokumentacji języka VBA .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Oblicz dni pomiędzy datami w VBA
Załóżmy, że w Excelu mamy dwie kolumny z datami:
Załóżmy, że chcemy obliczyć liczbę dat pomiędzy datą początkową a datą końcową w każdym wierszu i wyświetlić wyniki w kolumnie C.
W tym celu możemy utworzyć następujące makro:
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
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Liczba dat pomiędzy każdą datą początkową a każdą datą końcową jest podana w kolumnie C.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
Jak porównać daty w VBA
Jak filtrować kolumnę za pomocą VBA
Jak sortować wartości alfabetycznie w VBA