Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Formular unter bestimmten Bedingungen öffnen

Begonnen von Hell-Nano, August 05, 2018, 14:39:16

⏪ vorheriges - nächstes ⏩

Hell-Nano

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



MzKlMu

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.
Gruß Klaus

PhilS

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
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

Hell-Nano

Danke, das ist genau das was ich haben wollte.

Vielen dank dafür!