Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Öffnen Formular mit bestimmten Datensatz, wo Feld = Datum

Begonnen von Anneka, Juli 16, 2015, 10:22:27

⏪ vorheriges - nächstes ⏩

daedalus78

Diesen Ansatz hätte ich versucht, geklappt hat er leider nicht. Ist das Größer-Zeichen beim Datum ev. zu unspezifisch wenn es mehr als ein Element gibt, das größer ist?
Gruß
Wolfgang

MzKlMu

Hallo,
Zitatgeklappt hat er leider nicht.
Das ist einer der Antworten die bei den Helfenden den Blutdruck deutlich erhöhen.  ;D Das solltest Du Dir gleich abgeöhnen.
Bitte beschreibe genau was nicht gegangen ist, ggf. mit Fehlermeldung.

Außerdem ist es natürlich sinnvoll, den Code hier zu zeigen (von der 1. bis zur letzten Zeile) mit es nicht gegangen ist.
Wie sonst soll man da einen Fehler erkennen?
Der von Franz gezeigte Code sollte nämlich funktionieren.

Nur zur Sicherheit die Fragen:
- Der Datentyp des Feldes Startdatum ist Datum/Uhrzeit ?
- Enthält das Feld auch die Uhrzeit ?
Gruß Klaus

daedalus78

#18
Blutdruck wollen wir nicht... das ist ganz schlecht. Dafür ist meiner jetzt in der Höhe...
Ich habe beim Öffnen diesen Code hinterlegt:

Private Sub Form_Open(Cancel As Integer)
Me.Recordset.FindFirst "[Datum] >= Date()"
End Sub

Es hat zuvor keine Fehlermeldung gegeben und hat einfach den gewünschten Wert nicht angezeigt. Keine Ahnung warum, aber jetzt klappt das. Ich versteh jetzt gerade die Welt nicht mehr... :o
Doch, jetzt... "Cancel As Integer" hat gefehlt....  :P Ich habe das jetzt mal in einer alten Version der Datenbank ausprobiert. Wenn ich die Datenbank um alle anderen Codes bereinige, dann gibt es ohne diesen Zusatz gibt es jetzt auch eine Fehlermeldung. Vermutlich habe ich da einfach weiterprogrammiert, ein anderer Code hat dann die Operation abgebrochen. Anders kann ich mir das jetzt nicht erklären.

Die Fehlermeldung lautet:
Sie haben als Einstellung der Ereigniseigenschaft den Ausdruck Beim Öffnen eingegeben. Dieser Ausdruck hat einen Fehler verursacht: Deklaration der Prozedur entspricht nicht der Beschreibung eines Ereignisses oder eine Prozedur mit demselben Namen.
* Der Azsdruck gibt möglicherweise weder den Namen eine Makros noch den Namen einer benutzerdefinierten Funktion noch [Ereignisprozedur] zurück.
* Beim Auswerten einer Funktion, eines Ereignisses oder eines Makros tratmöglicherweise ein Fehler auf.


Nein, Zeit enthält das Feld nicht - Datum lang, ist die Einstellung.

Gruß Wolfgang

ebs17

Me.Recordset.FindFirst "[Startdatum] >= Date()"
Man sollte aber beachten, dass der Code das tut, was er beschreibt. Das erste gefundene Datum muss nicht heute, morgen oder so sein, sondern kann in ferner Zukunft liegen, es sei denn, das Recordset liegt in der nötigen Sortierung vor. Das müsste man sicherstellen, nicht nur daran glauben.
Mit freundlichem Glück Auf!

Eberhard