Access_ Tage zählen mit Wenn-Dann-Funktion

Hallo,

ich brauche dringend Eure Hilfe. Ich benutze Microsoft Access 2007 zum ersten Mal und hab folgendes Problem.

Ich habe zwei Datumsinhalte: Ver-Beginn und Ver-Ende …beide sind Textversionen. Ich möchte hier die Tage zwischen beiden Datums zählen. Jedoch soll sich das Datum nur auf das Jahr 2011 beginnen. d.h. Access soll die Daten im Zeitraum 01.01.2011-31.12.2011 zählen, jedoch aber auch die Tage die Mitten im Jahr enden oder Mitten im Jahr beginnen.

Bspw.
Beginn:01.02.2000 Ende:31.01.2011 Tage: 31 Tage
Beginn:01.12.2011 Ende:31.12.2011 Tage: 31 Tage
Beginn: 01.02.2011 Ende: 31.03.2011 Tage: 59 Tage

Wer kann mir helfen? Wie kann man das mit einer Funktion die Tage automatisch zählen lassen?

Ich freue mich schon über eure Antwort und Hilfe :smile:

Gruß-

Hallo,

Ich habe zwei Datumsinhalte: Ver-Beginn und Ver-Ende
…beide sind Textversionen.

das ist nicht gut, aber man kann sie mit der CDate-Funktion in richtige Datumswerte umwandeln.

Ich möchte hier die Tage zwischen beiden Datums zählen.

Dafür gibt es die DateDiff-Funktion. (Plural von Datum ist Daten!)

irgendwas = DateDiff(„d“, CDate(Datum1), CDate(Datum2))

„d“ sagt Access, dass Tage (days) gezählt werden sollen.

Jedoch soll sich das Datum nur
auf das Jahr 2011 beginnen. d.h. Access soll die Daten im
Zeitraum 01.01.2011-31.12.2011 zählen, jedoch aber auch die
Tage die Mitten im Jahr enden oder Mitten im Jahr beginnen.

Bspw.
Beginn:01.02.2000 Ende:31.01.2011 Tage: 31 Tage
Beginn:01.12.2011 Ende:31.12.2011 Tage: 31 Tage
Beginn: 01.02.2011 Ende: 31.03.2011 Tage: 59 Tage

Wer kann mir helfen? Wie kann man das mit einer Funktion die
Tage automatisch zählen lassen?

Das geht über ein If-Then-Else-Konstrukt: Wenn beide Daten inerhalb 2011 liegen kann normal gezählt werden. Wenn Datum1 vor dem 1. Januar liegt, Datum2 aber in 2011, muß Datum1 durch den ersten Januer ersetzt werden (nur in der Berechnung) und umgekehrt (natürlich mit dem 31. Dezember). Dann noch die beiden Fälle berücksichtigen, dass beide außerhalb 2011 liegen und es einmal einschließen und einmal nicht.

MfG,

ujk