PDA

Vollständige Version anzeigen : Grundsatzfrage zu voneinander abhängigen Kombinationsfeldern


Edgar Basler
13.06.2012, 07:10
Vielmals hat man das Problem, daß man mit Kombinationsfeldern Auswahlen treffen will, die voneinander abhängig sind.

Ein kleines, einfaches Beispiel zur Verdeutlichung:
Land --> Bundesland --> Ort

Wenn ich nun z.B.: Deutschland ausgewählt habe, dann will ich nur noch die Bundesländer auswählen können, die zu Deutschland gehören. Genauso möchte ich dann im 3. Schritt nur noch die Orte auswählen können, die zu ausgewählten Bundesland gehören.

Wer sich in Excel auskennt: Es sollte so ähnlich funktionen wie mit dem Einsatz von "Filter".

Gibt es hierzu eine allgemeine Vorgehensweise?

Maxel
13.06.2012, 07:16
Hallo Edgar,

donkarl 4.36 (http://www.donkarl.com?FAQ4.36) zeigt Dir, wie's geht.

Atrus2711
13.06.2012, 07:17
Hi,

es gibt sogar zwei. Nennen wir die Kombis cboLand, cboRegion und cboOrt.


SQL-basiert: cboRegion hat als Datenquelle etwas in der Art: SELECT * FROM Tabelle WHERE Land = Me!cboLand, und cboOrt hat etwas in dieser Art: SELECT * FROM Tabelle WHERE Land = Me!cboLand AND Region = Me!cboRegion. Wenn du bei leeren Kombis alles anbieten willst, müsste man die bedingung noch mit "... OR Me!cbo... IS Null"-Alternativen ergänzen. Unschön ist dabei der Formularbezug in der Abfrage.
VBA-basiert: Zu Beginn haben die Kombis cboRegion und cboOrt keine Datensatzherkunft. Die wird AfterUpdate jedes Kombis gesetzt. Dabei kann der aktuelle Kombifeld-Eintrag ausgelesen und in die SQL eingesetzt werden (als fester Wert oder als Parameter). Hier werden keine Formularbezüge in der SQL gebraucht, da der Bezug bereits von VBA bei jeder Änderung hergestellt wird. Schema: Me!cboRegion.RowSource = "SELECT * FROM Tabelle WHERE Land = " Me!cboLand

Persönlich neige ich zur zweiten Alternative.

Edgar Basler
13.06.2012, 07:29
Danke an Euch
mit solch schneller Antwort hätte ich nicht gerechnet. Werde die Lösungsansätze einfach ausprobieren.