Hallo liebe Access Profis,
ich habe ein kleines Problem mit einer Datenbank das ich leider nicht alleine gelöst bekomme aber ich denke ihr könnt mir helfen.
Also kurz zu der Datenbank:
Es handelt sich um einen Schichtplan in dem für jeden Tag der Einsatzort der Mitarbeiter eingetragen wird. Gearbeitet wird im Kontischicht betrieb somit gibt es auch Tage an denen aufgrund eines freien Tages kein Dienstplan existiert.
Was ich bisher geschafft habe ist, dass wenn ich das Formular öffne wird mir der Datensatz mit dem Aktuellen Datum angezeigt.
Was ich möchte:
Wenn ich das Formular öffne und unter dem Datum an dem ich es öffne ist ein Schichtplan vorhanden ist soll mir der Tagesaktuelle angezeigt werden.
Öffne ich das Formular aber an einem Freien Tag für den kein Dienstplan existiert soll mir der Datensatz für das nächste Datum für das ein Datensatz existiert angezeigt werden.
Ich hoffe ich konnte mein Anliegen verständlich rüberbringen und ihr könnt mir irgendwie helfen.
Ps.: aktuell verwende ich folgenden Code zum Sortieren
Private Sub Form_Open(Cancel As Integer)
Me.Recordset.FindFirst "[DAtum] = Date()"
End Sub
Hallo,
Zitataktuell verwende ich folgenden Code zum Sortieren
Zum Sortieren ?
Mit dem gezeigten Code wird nix sortiert, da wird ein Datensatz gesucht, sonst nix.
Zeige mal ein Bild des Beziehungsfensters.
PS:
Bitte verwende für Codedarstellungen die Codetags. Habe ich in Deinem Beitrag nachträglich gemacht.
Ich würde mit DMin das kleinste Datum größer gleich heute ermitteln und damit zu dem Datensatz gehen.
Etwa so:
Private Sub Form_Open(Cancel As Integer)
Dim schichtplanDatum As Date
schichtplanDatum = DMin("[Datum]","deineTabelle","[Datum] >= Date()")
Me.Recordset.FindFirst "[Datum] = #" & Format(schichtplanDatum , "yyyy-mm-dd") & "#"
End Sub
Danke, das ist genau das was ich haben wollte.
Vielen dank dafür!