Miesiąc Excel VBA
Funkcja miesiąca VBA to wbudowana funkcja służąca do pobierania miesiąca od daty, a wynik zwracany przez tę funkcję jest liczbą całkowitą z zakresu od 1 do 12. Ta funkcja wyodrębnia tylko numer miesiąca z podanej wartości daty.
Na przykład, jeśli data to 28-maj-2019, to aby wyodrębnić numer miesiąca z tej daty, możemy użyć funkcji MIESIĄC.

Jak korzystać z funkcji miesiąca w VBA?
Poniżej znajduje się składnia funkcji MIESIĄC.

Musimy tylko podać datę, od której próbujemy wyodrębnić numer miesiąca.
Przykład 1
Zobaczymy, jak napisać kod, aby wyodrębnić numer miesiąca od daty. Weźmiemy datę jako „10 -go października 2019 r."
Krok 1: Uruchom procedurę makra.
Kod:
Sub Month_Example1 () End Sub

Krok 2: Zdefiniuj zmienną do przechowywania wartości daty. Ponieważ przechowujemy wartość danych, naszym typem danych powinno być „Data”. Dlatego zadeklaruj zmienną i przypisz typ danych jako „Data” do zadeklarowanej zmiennej.
Kod:
Sub Month_Example1 () Dim DDate As Date End Sub

Krok 3: Na tej zmiennej, należy przypisać wartość daty z 10 th października 2019 r.
Kod:
Sub Month_Example1 () Dim DDate As Date DDate = "10 Oct 2019" End Sub

Krok 4: Teraz przypisz numer miesiąca, aby zadeklarować jeszcze jedną zmienną jako „Liczba całkowita”.
Kod:
Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" End Sub

Krok 5: Dla tej zmiennej otworzymy funkcję MIESIĄC.
Kod:
Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (End Sub

Krok 6: Funkcja miesiąca pytająca o „Datę”, którą należy podać, aby wyodrębnić numer miesiąca. Ponieważ zapisaliśmy już docelową datę w zmiennej „DDate”, podaj tę zmienną jako parametr wejściowy funkcji miesiąca.
Kod:
Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (DDate) End Sub

Krok 7: Teraz funkcja „Month” zwróci numer miesiąca z podanej daty do zmiennej „MonthNum” i na koniec pokaże wynik w oknie komunikatu w VBA.
Kod:
Sub Month_Example1 () Dim DDate As Date Dim MonthNum As Integer DDate = "10 Oct 2019" MonthNum = Month (DDate) MsgBox MonthNum End Sub

Uruchom kod i zobacz numer miesiąca w oknie komunikatu.
Wynik:

Zatem numer miesiąca od podanej daty to 10, czyli miesiąc październikowy.
Przykład nr 2
Teraz weźmiemy odwołania do komórek do kodowania. Poniżej znajduje się data, którą mamy w arkuszu.

Z wartości daty w komórce A2 musimy więc wyodrębnić numer miesiąca do komórki B2.
Kod:
Sub Month_Example2 () Range („B2”). Value = End Sub

Otwórz funkcję MIESIĄC i podaj datę jako wartość ZAKRESU A2.
Kod:
Sub Month_Example2 () Range ("B2"). Value = Month (Range ("A2")) End Sub

Powód, dla którego dostarczyliśmy komórkę Zakres A2, ponieważ tym razem nasza data znajduje się w komórce A2, więc to samo będzie odwołaniem.
Teraz wykonaj kod i uzyskaj numer miesiąca od daty w komórce B2.

Proszę bardzo, mamy numer miesiąca w komórce B2.
Przykład nr 3
Wyodrębniliśmy miesiąc dla daty pojedynczej komórki, ale co, jeśli mamy wiele wierszy danych, takich jak poniżej.

W takich przypadkach musimy przejrzeć komórki i wykonać zadanie wyodrębnienia numeru miesiąca z każdej odpowiedniej daty.
Poniższy kod wykona zadanie za nas.
Kod:
Sub Month_Example3 () Dim k As Long For k = 2 do 12 Cells (k, 3) .Value = Month (Cells (k, 2) .Value) Next k End Sub

Ten kod zrobi pętlę przez wiersze od 2 do 12 i wyodrębni numer miesiąca z drugiej kolumny i zapisze wynik w trzeciej kolumnie.

O czym należy pamiętać
- MIESIĄC to funkcja arkusza roboczego, a także funkcja VBA.
- MIESIĄC wymaga poprawnego odniesienia do daty w innym przypadku, otrzymamy komunikat o błędzie.
- Jeśli numer miesiąca to 12, zostanie wyświetlony komunikat o błędzie.