Betrifft: VBA: Datum erzeugen
von: André
Geschrieben am: 20.01.2010 11:40:09
Moin zusammen,
ich stehe ja immer noch mit Excel-VBA auf Kriegsfuß, daher heute mal wieder eine wahrscheinlich blöde Frage:
wie kann ich in VBA ein Datum erzeugen?
Ausgangslage: ich habe eine Variable mit einer Jahreszahl (Integer, z.B. 2009)
Ziel: ich möchte ein Datum mit dieser Jahreszahl zurückgeben (z.B. den 01.01.2009)
Das ganze soll in einer Funktion zum Einsatz kommen.
Was ich probiert habe, aber NICHT funktioniert:
Function Test(Tag As Variant) Dim Jahr As Integer Jahr = DatePart("yyyy", Tag) Test = WorksheetFunction.Datum(Jahr , 1, 1) End Function
Betrifft: AW: VBA: Datum erzeugen
von: Chris
Geschrieben am: 20.01.2010 11:42:07
Intuitiv ohne Test: Dim Jahr as Date
Betrifft: AW: VBA: Datum erzeugen
von: André
Geschrieben am: 20.01.2010 11:47:46
Moin Chris,
danke für Deine Intuition, die aber leider falsch ist. Jahr ist eine Zahl, und kein Datum.
Gruß, André
Betrifft: AW: VBA: Datum erzeugen
von: Hajo_Zi
Geschrieben am: 20.01.2010 11:42:59
Halo André,
Test = cdate(Jahr , 1, 1)
Betrifft: AW: VBA: Datum erzeugen
von: André
Geschrieben am: 20.01.2010 11:49:06
Moin Hajo,
Danke! So funktionierts zwar nicht, aber Du hast mich auf die richtige Fährte gelockt.
So gehts:
Test = CDate("01.01." & Jahr)Gruß, André
Betrifft: AW: VBA: Datum erzeugen
von: Hajo_Zi
Geschrieben am: 20.01.2010 11:52:47
Hallo André,
Du hast Recht so
DateSerial(jahr,1,1)
Gruß Hajo