Jak sortować według daty w vba (z przykładami)
Aby sortować wiersze według daty, możesz użyć następującej podstawowej składni w VBA:
Sub SortByDate()
Range(" A1:C10 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, Header:=xlYes
End Sub
W tym konkretnym przykładzie wiersze z zakresu A1:C10 są sortowane na podstawie dat w kolumnie A, od najstarszego do najnowszego.
Jeśli chcesz posortować wiersze według daty od najnowszego do najstarszego, możesz zamiast tego określić Order1:=xlDescending .
Zauważ, że Header:=xlYes określa, że pierwsza linia powinna być traktowana jako linia nagłówka.
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Sortuj według daty za pomocą VBA
Załóżmy, że mamy w Excelu następujący zestaw danych, który zawiera informacje o sprzedaży i zwrotach w sklepie w różnych terminach:
Załóżmy, że chcemy posortować wiersze według daty, od najstarszych do najnowszych.
W tym celu możemy utworzyć następujące makro:
Sub SortByDate()
Range(" A1:C10 ").Sort Key1:=Range(" A1 "), Order1:=xlAscending, Header:=xlYes
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Należy pamiętać, że wiersze są teraz sortowane według daty, od najstarszej do najnowszej.
Aby posortować wiersze według daty od najnowszego do najstarszego, możemy określić Order1:=xlDescending :
Sub SortByDate()
Range(" A1:C10 ").Sort Key1:=Range(" A1 "), Order1:=xlDescending, Header:=xlYes
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Zwróć uwagę, że wiersze są teraz sortowane według daty, od najnowszego do najstarszego.
Uwaga nr 1 : W tym przykładzie posortowaliśmy według jednej kolumny. Można jednak określić więcej kluczy do sortowania według wielu kolumn.
Uwaga #2 : Pełną dokumentację metody sortowania VBA znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
VBA: Jak sortować arkusz według wielu kolumn
VBA: Jak policzyć liczbę wierszy w zakresie
VBA: jak filtrować kolumnę