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

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *