Faq/Base/135/de

Wie kann ich ein Auswahl-Feld erstellen?
Bei der Eingabe sollen aus den bereits im Feld enthaltenen Werten für den nächsten Datensatz Werte ausgewählt werden. Dies ist in Calc mit einer Auswahlliste möglich:  + .

In Base ist dies nicht in der Tabelleneingabe oder in einer Abfrage möglich. Stattdessen muss zuerst ein Formular erstellt werden.

In einem Formular wird ein Textfeld in ein Kombinationsfeld umgewandelt: Rechter Mausklick > .

In dem Kombinationsfeld wird der Reiter Daten und dort die SQL-Eingabe aufgerufen: Rechter Mausklick >.

Unter wird eine Abfrage wie die folgende abgespeichert:

The technique uses a combobox control whose content type will be Sql and the contents is the required selection.

SELECT DISTINCT "Name" FROM "Tabelle" ORDER BY "Name" ASC

Notes:

Das Schlüsselwort DISTINCT zwingt die Liste, Duplikate auszulassen.

Die Verwendung eines Kombinationsfeldes ermöglicht die Eingabe neuer Werte. Diese werden sofort in der Liste berücksichtigt, leider aber an das Ende der Liste angefügt. Erst bei einem erneuten Aufruf des Formulars oder bei einer Aktualisierung des Kombionationsfeldes werden die neuen Werte korrekt eingeordnet.



Mit Hilfe des folgenden Makros ist es möglich, die Aktualisierung direkt nach dem Verlassen des Kombinationsfeldes zu veranlassen:

Download a database example