Neuigkeiten:

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

Mobiles Hauptmenü

Formular per VBA-Code öffnen und bestimmtes Datum anzeigen

Begonnen von Marcel Steeger, Februar 07, 2025, 18:59:15

⏪ vorheriges - nächstes ⏩

Marcel Steeger

Hallo liebe Mitstreiterinnen und Mitstreiter,

ich habe eine umfangreiche Auftragsdatenbank erstellt und sie funktioniert einwandfrei, bis auf eine Funktion. Ich habe im Hauptmenü ein Feld (QuickCheckDate) mit dem Format Datum/Uhrzeit (Datum kurz) eingebettet und möchte nun auf Knopfdruck ein Formular öffnen. Das Zielfeld (AUF_Auftrag_Termin) ist ebenfalls im Format Datum/Uhrzeit (Datum, kurz). Per VBA-Code soll das Formular geladen werden und mir anzeigen, ob an diesem Tag bereits Termine vergeben wurden. Ich habe es mit folgendem Code versucht:

Private Sub BTN_QuickCheck_Click()
DoCmd.OpenForm "FRM_QCH_QuickCheckDate", acNormal, , "[AUF_Auftrag_Termin]=" & Me.QuickCheckDate, acFormReadOnly
Me.QuickCheckDate = ""
End Sub


Dann bekomme ich die folgende Fehlermeldung für das Datum 15.06.2025:

"Laufzeitfehler '3075'"

"Syntaxfehler in Zahl in Abfrageausdruck '[AUF_Auftrag_Termin]=15.06.202'


Kann mir jemand helfen, beziehungsweise den Code so umschreiben, dass es funktioniert? Eigentlich soll auch noch eine Fehlermeldung auftauchen, wenn an diesem Datum noch gar keine Termine vergeben wurden. Es wäre super lieb, wenn ihr mir auch hier weiterhelfen könntet!

Liebe Grüße
Marcel  :-[

andyfau

Hallo, das Datum muss richtig formatiert übergeben werden:
DoCmd.OpenForm "FRM_QCH_QuickCheckDate", acNormal, , "[AUF_Auftrag_Termin]= #" & Format(Me.QuickCheckDate, "yyyy-mm-dd") & "#", acFormReadOnly
Beste Grüße
Andreas

Marcel Steeger


knobbi38

Hier mal die Version mit benannten Argumenten:
  DoCmd.OpenForm FormName:="FRM_QCH_QuickCheckDate", _
      WhereCondition:=BuildCriteria( _
          "AUF_Auftrag_Termin", dbDate, CStr(Me.QuickCheckDate) _
      ), Datamode:=acFormReadOnly

Hast du wirklich deiner Ereignisprozedur "Sub BTN_QuickCheck_Click()" so umbenannt?

Gruß Knobbi38