VBA - 1. Tag des Monats
#1
Guten Tag,

ich versuche grade mir den 1. Tag des Monats über VBA ausgeben zu lassen. Leider habe ich Probleme mit dem Bezug.

Code:
Tabelle2.Cells(x, 1).Value = DateSerial(Year("Text"), Month("Text"), 1)

Mein Datum, vom dem ich mir den 1. des Monats ausgeben lassen möchte steht in der gleichen Tabelle, in Spalte 4.
Wenn ich allerdings diese Spalte eingeben, damit er die For-Schleife durchläuft, erhalte ich einen Fehler.

Code:
Tabelle2.Cells(x, 1).Value = DateSerial(Year(Tabelle2.Cells(x, 4).Value), Month(Tabelle2.Cells(x, 4), 1)

Wie kann ich mich auf mein Datum beziehen?


Gruß
Top
#2
Hallo,

kommt halt darauf an, ob x, 4 ein Datum enthält.

Gruß Uwe
Top
#3
Sub Shorty(): [A1] = [1&-YEAR(40000)]: [A2] = [6&-2020]: [A3] = [1&-YEAR(NOW())]: End Sub
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Top
#4
Hallo BMSOBoo,

macht es ggfs Sinn, das direkt im Blatt zu erledigen?
Ich hab's so verstanden, dass in X4 eine datumsformatierte Zahl steht
Code:
=MONATSENDE(X4;-1)+1

Das geht natürlich auch mit VBA:
Code:
Sub Monatsanfang()

Dim dtm As Date
Dim lng As Long

lng = WorksheetFunction.EoMonth(Range("X4"), -1) + 1
dtm = Format(lng, "dd.mm.yyyy")

Debug.Print dtm

End Sub
Gruß Ludwig
Top
#5
Welcher Fehler kommt denn?
Was steht in den Zellen der Spalte 4 genau drin und wie sind diese Zellen formatiert?
Gruß
Michael
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste