Hallo,
Ich möchte in einer Abfrage Werte aus zwei Textfeldern aus einem Formular an eine Abfrage übergeben.
Der erste Wert ist ein Operator z.B. >= der zweite Wert eine Zahl.
Das Problem:
Die Übergabe der Zahl an die Abfrage funktioniert, wenn ich aber beide Werte übergeben will
geht nichts mehr.
Beispiel:
[forms]![Bemerkung_SW]![Text105] funktioniert Feldinhalt: (Zahl)
[forms]![Bemerkung_SW]![Text103] & [forms]![Bemerkung_SW]![Text105] funktioniert nicht
Feldinhalt 1 (<=) Feldinhalt 2 (Zahl)
>=[forms]![Bemerkung_SW]![Text105] funktioniert
Wer kann hier weiterhelfen?
vielen Dank im voraus
Hallo,
es ist nicht möglich, Operatoren als Paramterfeld in eine Abfrage (SQL-String) im Abfrageentwurf auf diese Weise einzubauen.
Insgesamt steht die ganze Vorgehensweise eher auf wackeligen Beinen..
verstehs noch nicht so ganz. Gib mal ein Beispiel was in einem Datensatz genau steht, und wie es herausgefiltert werden soll, vielleicht kann ich ja helfen
Hallo,
wie Franz ja schon geschrieben hat, ist die Übergabe von Operatoren (>=, <=, >, <, ...) an eine Abfrage aus einem Formularfeld nicht möglich.
Wenn der Vergleichsoperator immer <= lautet solltest du diesen in die Abfrage wie funktionierend ...
Zitat>=[forms]![Bemerkung_SW]![Text105] funktioniert
... übergeben. Alternativ könntest du die SQL der Abfrage dynamisch gestalten und demzufolge den String per VBA zusammenbauen um ihn dann der Abfrage zuzuweisen.
In dem Fall ist es dann auch möglich den Operator aus einem Formularfeld auszulesen und an die Abfrage abzuliefern.
CurrentDB.QueryDefs("DeineAbfrage").SQL = "SELECT * FROM DeineTabelle WHERE DeinFeld" & Forms!frmTest!Text103 & Forms!frmTest!Text105Die Abfrage kannst du dann probeweise auch per VBA ...
DoCmd.OpenQuery("DeineAbfrage")... oder auch aus dem Navigationsbereich öffnen um das Ergebnis zu überprüfen.
Für den Fall der VBA - Zuweisung muss ein geeignetes Ereignis herhalten um den SQL-String an die Abfrage zu senden. (Z.B. ein Button-Klick oder ein anderes brauchbares Ereignis)
HTH