1.3k Aufrufe
Gefragt in Datenbanken von
Ich möchte in meiner Access-DB prüfen, ob ein Teilnehmer an einem Kurs ein oder zweimal in der Woche da war. Das Formular zeigt die Daten des Teilnehmers und wann er zuletzt da war. Das Problem für mich ist jetzt, dass der eine Teilnehmer einmal pro Woche, ein anderer zweimal pro Woche kommen darf. Wie kann ich jetzt überprüfen und mir anzeigen lassen, halt der Teilnehmer war diese Woche schon da. Mit DateAdd geht das wohl.
Hat einer eine Idee?
Gruß Marlies

3 Antworten

0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Marlies,

Um die Kalenderwoche festzustellen lautet die Formel:

Ausdr1: DatTeil("ww";[Datum];2;2)

Habe angenommen, dass das Feld "Datum" heißt.

Die Formel kann sowohl bereits in der Abfrage unter "Aufbauen" bzw. in ein ungebundenes Feld des Formulars unter "Steuerelementinhalt" eingefügt werden.

Gruß

Paul1
0 Punkte
Beantwortet von
Hallo Paul1,

Danke für die Antwort.
Ich habe das erst mal so gelöst

Dim strDate As Date

strDate = DateAdd("ww", -6, txtDatum)

If txtCheckIn <= strDate Then
Me.AnzeigeSechsWochen.Visible = True
End If

txtCheckIn ist das Datum der letzten Teilnahme
txtDatum ist das aktuelle Datum


Dim strWoche As Long

strWoche = Nz(DateDiff("d", txtCheckIn, txtDatum))
txtVariable = strWoche

If txtWieOft = 1 Then
If txtVariable < 7 Then
Me.Woche.Visible = True
End If
End If


Nur wenn der Teilnehmer jetzt das erstemal da ist, ist ja im Feld txtCheckIn noch kein Datum vorhanden und das
Me.Woche.Visible = True in der IF Abfrage wird ausgeführt.
Wie bekomme ich das hin, dass das Me.Woche.Visible = True erst ausgeführt wird, wenn in txtCheckIn ein Datum steht?

Gruß marlies
0 Punkte
Beantwortet von paul1 Experte (4.9k Punkte)
Hallo Marlies,

Was Deine spezielle Frage (AW2) betrifft, kann ich leider nicht behilflich sein.

Gruß

Paul1
...