So finden sie den letzten tag des monats mithilfe von vba (mit beispiel)
Sie können die Funktion DateSerial() in VBA mit einem Wert von 0 für das Tagesargument verwenden, um den letzten Tag des Monats für ein Datum in einer bestimmten Zelle zu finden.
Sie können beispielsweise die folgende Syntax verwenden, um den letzten Tag des Monats für das Datum in Zelle A1 zu finden und dieses Datum in Zelle B1 zurückzugeben:
dateVal = DateValue(Range(" A1 "))
Range(" B1 ").Value = DateSerial(Year(dateVal), Month(dateVal)+1, 0)
Wenn Zelle A1 beispielsweise den 05.01.2023 enthält, gibt Zelle B1 den 31.01.2023 zurück.
Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.
Beispiel: Mit VBA den letzten Tag des Monats ermitteln
Nehmen wir an, wir haben den folgenden Datensatz in Excel, der Informationen über Verkäufe enthält, die zu verschiedenen Terminen in einem Unternehmen getätigt wurden:
Angenommen, wir möchten für jedes Datum in Spalte A den letzten Tag des Monats finden und das Datum in der entsprechenden Zelle in Spalte C zurückgeben.
Wir können dazu die folgende Syntax verwenden:
SubFirstDayOfMonth ()
Dim i As Integer
For i = 2 To 11
dateVal = DateValue(Range(" A " & i))
Range(" C " & i).Value = DateSerial(Year(dateVal), Month(dateVal)+1, 0)
Next i
End Sub
Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:
Jedes Datum in Spalte C stellt den letzten Tag des Monats für das entsprechende Datum in Spalte A dar.
Hinweis Nr. 1: Im Code haben wir For i = 2 bis 11 verwendet, da die Zellen A2 bis A11 die Daten enthielten, die uns interessierten. Sie können diesen Bereich jederzeit ändern, je nachdem, welchen Zellbereich Sie verwenden möchten.
Hinweis Nr. 2 : Die vollständige Dokumentation der DateSerial() -Funktion in VBA finden Sie hier .
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben mit VBA ausführen:
So sortieren Sie in VBA nach Datum
So fügen Sie „if“ zwischen zwei Daten in VBA hinzu
So zählen Sie in VBA größer als das Datum