Hallo,
Das haben die Roemer evtl. Auch gesagt, als irgendwelche dahergelaufenen Auslaender anfingen mit einer 0 zu rechnen. ;)
Fuer Excel scheint Monat 0 sowas wie der letztjaehrige Dezember zu sein.
wie ich schon schrieb:
"Der 305. Tag des 0. Monat des Jahres 2009 ist somit der 1. Oktober 2009."
Sorry, aber Du kannst DateSerial auch -1 als Monat übergeben:
DateSerial(2009, -1, 62)
ist der 62. Tag des -1. Monats des Jahres 2009,
d.h. der 62. Tag des 11. Monats des Jahres 2008
und da der November 30 und der Dezember 31 Tage hat, ist dies nichts anderes als eine komplizierte Schreibweise für
DateSerial(2009, 1, 1)
was viel logischer ist, um den ersten Januar zu kennzeichnen.
Für den OP war wohl:
DateSerial(2009, 10, 1)
als Angabe für den 1.10.2009 viel zu schwierig und unverständlich und natürlich noch viel schwieriger als die von Jörg vorgeschlagene Variante:
Dim datum as Date
For datum = CDate("01.10.2009") To CDate("31.12.2009")
' Tu was mit dem Datum
Next
was ja nun wirklich niemand versteht, ohne zwei Seiten Kommentare dazu zu schreiben ;-)
Nö, da ist sowas wie DateSerial, was PHPler an mktime() erinnert, viel anschaulicher und verständlicher. Muss man nicht so komplizierte Cast-Funktionen wie CDate verwenden, muss man sich nicht an Datentypen halten. Alles in Variant, das ist doch wie in PHP ...
Freundliche Grüße
Vinzenz