KAlender erkennt 29.02.2008 nicht

Hallo zusammen,

ich habe folgendes Problem:
In einer Datenbank habe ich folgende Prozedur:

'Datum als Text

Datum = Format(Forms!Montagetermin!Mbegin, „dd.mm.yyyy“)

'TerminMatrix erstellen

VLZ_mit = 0
VLZ_ohne = 0

Kalender.FindFirst „[datumtext] = '“ + Datum + „’“

If Kalender!AT = „A“ Then

TermM.AddNew
TermM!VLZ_mit = VLZ_mit
TermM!VLZ_ohne = VLZ_ohne
TermM.Update

Do

Kalender.MoveNext

If Kalender!AT = „A“ Then

VLZ_mit = VLZ_mit + 1
VLZ_ohne = VLZ_ohne + 1

TermM.AddNew
TermM!VLZ_mit = VLZ_mit
TermM!VLZ_ohne = VLZ_ohne
TermM.Update

End If

If (Kalender!AT = „W“) Or (Kalender!AT = „F“) Then VLZ_mit = VLZ_mit + 1

Loop Until VLZ_ohne >= 20

Die Tabelle Kalender enthält die Datumnsdaten des Kalenderjahres 2008. Für alle Tage steht in der Spalte AT ob es sich um einen Arbeitstag (A), Wochenende (W) oder Feiertag (F) handelt. Im ersten Durchlauf der Schleife erkennt Access den 29.02. als Arbeitstag (A).Mit dem Befehl Kalender.MoveNext springt er aber nicht auf den 01.03., sondern ans Ende der Tabelle, wo er den 01.01.2009 als Feiertag erkennt und beim nächsten Kalender.MoveNext keine DAtensätze mehr findet.

Lasse ich die Prozedur mit dem Datum 28.02.2008 durchlaufen, dann erkennt das Programm zwar den 28.02. als solchen, überspringt aber den 29.02. und landet auf dem 01.03.

Woran kann das liegen und wie könnte man dieses Problem beheben?
Über eine schnelle Antwort von euch würde ich mich freuen.

Viele Grüße von Beate

Hallo zusammen,

ich habe folgendes Problem:
In einer Datenbank habe ich folgende Prozedur:

'Datum als Text

.
.

Die Tabelle Kalender enthält die Datumnsdaten des
Kalenderjahres 2008. Für alle Tage steht in der Spalte AT ob
es sich um einen Arbeitstag (A), Wochenende (W) oder Feiertag
(F) handelt. Im ersten Durchlauf der Schleife erkennt Access
den 29.02. als Arbeitstag (A).Mit dem Befehl Kalender.MoveNext
springt er aber nicht auf den 01.03., sondern ans Ende der
Tabelle, wo er den 01.01.2009 als Feiertag erkennt und beim
nächsten Kalender.MoveNext keine DAtensätze mehr findet.

Lasse ich die Prozedur mit dem Datum 28.02.2008 durchlaufen,
dann erkennt das Programm zwar den 28.02. als solchen,
überspringt aber den 29.02. und landet auf dem 01.03.

Woran kann das liegen und wie könnte man dieses Problem
beheben?
Über eine schnelle Antwort von euch würde ich mich freuen.

Viele Grüße von Beate

Hallo,
am Besten behebst Du das, indem Du das Datumsfeld in den Tabellen als vom Datentyp Datum/Uhrzeit deklarierst und den Code entspr. anpaßt…

Gruß Franz