Access 2007: Abfragen für DateTime-Feld zwischen zwei Kurzen Datum-Werte

Ich habe ein Formular mit zwei Textfeldern für Benutzereingabe. Beide Textfelder haben die Eigenschaft format der Einstellung "Kurzes Datum". Der eine ist die "start-Datum", und die andere ist die "Ende-Datum". Ich habe auch mehrere Tabellen, die jeweils mit einem DateTime-Feld ("studystartdatetime"). Ich möchte in der Lage sein, auf diese Tabellen Abfragen, aber die Ergebnisse einschränken auf die Zeilen, deren DateTime-Felder sind die zwischen den eingegebenen Daten (inklusive). Derzeit ist die Bedingung:

WHERE s.studystartdatetime BETWEEN forms!frmMain!txtstartdate AND forms!frmmain!txtenddate

Diese, jedoch nicht die Rückgabe von Zeilen, die aufgetreten sind auf die enddate angegeben.

Ich habe versucht, jede Kombination von CDate Format, und DateValue, dass ich mir vorstellen könnte, in dem wrap eine oder alle dieser Felder, aber ich erhalte immer die gleiche kryptische Fehlermeldung:

Wird der Ausdruck falsch eingegeben oder er ist zu Komplex, um ausgewertet werden. Zum Beispiel einen numerischen Ausdruck enthält möglicherweise zu viele komplizierte Elemente. Versuchen Sie, die Vereinfachung des Ausdrucks durch die Zuordnung von teilen des Ausdrucks Variablen.

Einige Beispiele von Bedingungen, die ich versucht habe:

WHERE CDate(Format(s.studystartdatetime, "yyyy/mm/dd")) BETWEEN forms!frmMain!txtstartdate AND forms!frmmain!txtenddate

WHERE DateValue(Format(s.studystartdatetime, "yyyy/mm/dd")) BETWEEN forms!frmMain!txtstartdate AND forms!frmmain!txtenddate

WHERE CDate(Format(s.studystartdatetime, "yyyy/mm/dd")) BETWEEN CDate(Format(forms!frmMain!txtstartdate, "yyyy/mm/dd")) AND CDate(Format(forms!frmmain!txtenddate, "yyyy/mm/dd"))

WHERE DateValue(Format(s.studystartdatetime, "yyyy/mm/dd")) BETWEEN CDate(Format(forms!frmMain!txtstartdate, "yyyy/mm/dd")) AND CDate(Format(forms!frmmain!txtenddate, "yyyy/mm/dd"))

WHERE DateValue(Format(s.studystartdatetime, "Short Date")) BETWEEN forms!frmMain!txtstartdate AND forms!frmmain!txtenddate

Etc.

Jede Eingabe in diese wäre sehr dankbar 🙂

InformationsquelleAutor Richard | 2009-10-07
Schreibe einen Kommentar