Ziel: In einer Tabellenzelle soll ein Fremdschlüsselfeld per Name in einem Kombinationsfeld ausgewählt werden können. Die zugehörigen Fremd-ID soll automatisch in die Tabelle eingetragen werden, ohne dass man selber nach der ID suchen muss.
- Entwurfsansicht der Tabelle öffnen
- Fremdschlüsselspalte auswählen
- unten “Nachschlagen” auswählen
- “Steuerelement anzeigen” -> Kombinationsfeld
- Herkunftstyp “Tabelle/Abfrage”
- Datensatzherkunft auf “…” klicken (Abfrage-Generator öffnen)
- erst Spalte mit Text (z.B. Name) wählen, Sortierung aufsteigend
- dann Spalte mit Primärschlüssel (ID) wählen
- Abfrage-Generator schließen
- Access generiert nun ein passendes SQL-Statement, z.B.:
- Gebundene Spalte muss nun auf “2” gestellt werden, d.h. die “User.ID” wird später bei der Auswahl anstatt des gewählten Namens in die Tabelle eingetragen
- Spaltenzahl auf “1”, so wird im Kombinationsfeld nur die 1. Spalte, also der “Name” angezeigt
- Spaltenbreiten können in cm angegeben werden, hier sinnvolle Werte eintragen. Mehrere Spaltenbreiten per “;” trennen!
- Listenbreite gibt die angezeigte Gesamtbreite in cm des Kombinationsfeldes an
- Zu beachten ist, dass, wenn mehrere Spalten bei der Auswahl angezeigt werden, immer die erste angezeigte Spalte später bei der Auswahl in der Tabelle zu sehen ist.
SELECT User.Name, User.ID FROM Users ORDER BY User.Name;