Parameterabfragen und Formulare

Bisher haben wir Formulare verwendet, die auf Tabellen oder Abfragen basieren. Es geht aber auch umgekehrt: Abfragekriterien können auf Formularen beruhen. Schauen wir daher zurück zu Kriterien in Abfragen: Wenn ein Kriterium flexibel gestaltet sein muss, z. B; weil das Kriterium erst durch den User ausgewählt werden soll, stößt man mit den dort geschilderten Möglichkeiten an Grenzen. Man kann aber manuell Kriterien, so genannte Parameterwerte, an eine Abfrage übergeben:

Feld: tblOrte.* txtOrt
Tabelle: tblOrte tblOrte
Sortierung:    
Anzeigen:
Kriterien:   [Geben Sie einen Ort ein]
oder:    
     

Führt man diese Abfrage aus, erscheint zunächst eine Eingabeaufforderung ...

SELECT *
FROM tblOrte
WHERE txtOrt = [Geben Sie einen Ort ein];
Parameterwert eingeben

Geben Sie einen Ort ein

 

... anhand derer man einen Wert an die Abfrage übergeben kann. Im Allgemeinen sind Abfrageparameter auf diese Art nicht zu empfehlen. Interessant werden sie erst im Zusammenspiel mit Formularen, um die Standardeingabeaufforderung durch ein individuelles Formular zu ersetzen:

Feld: tblOrte.* txtOrt
Tabelle: tblOrte tblOrte
Sortierung:    
Anzeigen:
Kriterien:   [Forms]![Formularname]![Steuerelementname]
oder:    
     

So kann man in einem Steuerelement erst einen Wert eingeben und ihn danach in einer Abfrage auswerten. Beim Formular Formularname kann es sich um ein normales Formular handeln, oder ein Unterformular. Lediglich Endlosformulare sind ausgenommen, weil dort das Steuerelement mehrfach angezeigt wird.