Jak korzystać z eomonth w vba (z przykładem)
Możesz użyć metody EoMonth w VBA, aby zwrócić ostatni dzień miesiąca dla danej daty.
Oto powszechny sposób wykorzystania tej metody w praktyce:
Sub LastDayOfMonth()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i
End Sub
To konkretne makro wyszukuje ostatni dzień miesiąca dla każdej daty z zakresu A2:A11 i wyświetla tę datę w odpowiedniej komórce z zakresu C2:C11 .
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Jak używać EoMonth w VBA
Załóżmy, że mamy w Excelu następujący zestaw danych, który zawiera informacje o sprzedaży zrealizowanej przez firmę w różnych terminach:
Załóżmy, że chcemy znaleźć ostatni dzień miesiąca dla każdej daty w kolumnie A i wyświetlić go w kolumnie C.
W tym celu możemy utworzyć następujące makro:
Sub LastDayOfMonth()
Dim i As Integer
For i = 2 To 11
Range(" C " & i).Value = Application.WorksheetFunction.EoMonth(Range(" A " & i), 0)
Range(" C " & i).NumberFormat = " m/d/yyyy "
Next i
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Należy pamiętać, że kolumna C zawiera ostatni dzień miesiąca dla każdej odpowiedniej daty w kolumnie A.
Należy pamiętać, że użyliśmy właściwości NumberFormat do wyświetlenia wartości dat w rozpoznawalnym formacie daty w kolumnie C zamiast liczb seryjnych, co jest formatem domyślnym w Excelu.
Należy również pamiętać, że ostatni argument metody EoMonth określa liczbę miesięcy do przodu lub do tyłu, które należy zastosować przy obliczaniu ostatniego dnia miesiąca.
W tym przykładzie użyliśmy wartości 0 , aby określić, że chcemy znaleźć ostatni dzień bieżącego miesiąca.
Zamiast tego moglibyśmy jednak użyć wartości -1, aby określić, że chcemy znaleźć ostatni dzień poprzedniego miesiąca, lub wartości 1 , aby określić, że chcemy znaleźć ostatni dzień następnego miesiąca.
Uwaga : Pełną dokumentację metody EoMonth w VBA znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
Jak porównać daty w VBA
Jak przekonwertować ciąg znaków na bieżąco w VBA
Jak obliczyć dni między dwiema datami w VBA