Supportnet / Forum / Datenbanken
Datensatzherkunft Kombinationsfeld in Access
Frage
Hallo,
ich habe zwei Tabellen:
Tabelle 1 enthält zwei Felder: Bereichs_ID und Bereichsname
Tabelle 2 enthält drei Felder: Themen_ID, Bereichs_ID und Themenname
Zu jedem Bereich gibt es eine bestimmte Menge von Themen, in Tabelle 2 sind aber natürlich alle Themen zu allen Bereichen enthalten.
Nun habe ich ein Formular mit zwei Kombinationsfeldern. Im ersten Kombinationsfeld wähle ich einen Bereich aus und würde dann im zweiten Kombinationsfeld gerne nur die zu diesem Bereich gehörenden Themen angezeigt bekommen.
Ich habe es geschafft mir in VBA die Bereichs_ID meiner Auswahl ermitteln zu lassen und habe diese einer Variablen zugewiesen. Aber wie kann ich den Wert dieser Variablen quasi als Parameter an die Abfrage für das zweite Kombinationsfeld weitergeben?
Oder anders gefragt, wenn ich eine SQL - Abfrage mit RunSQL ausführe, welchem Datentyp muss ich das Ergebnis zuweisen und wie bekomme ich mein Ergebnis im zweiten Kombinationsfeld angezeigt.
SOS...such schon ewig herum und finde keine Lösung
Vielen Dank
Simone
Antwort 1 von Marie
Durch ein Ereignis beim Aktualisieren des ersten Kombifeldes das zweite Kombifeld filtern.
Gruß Marie
Wenn Du nicht klarkommst kopier die SQL der Kombifelder hier rein.
Gruß Marie
Wenn Du nicht klarkommst kopier die SQL der Kombifelder hier rein.
Antwort 2 von pinki11
Hallo Marie,
vielen Dank für Deinen Tipp. Komme aber trotzdem noch nicht ganz klar. SQL ist glaub nicht das Problem, sondern mehr, wie ich das Makro genau gestalten muss, dass dann den Filter für das zweite Kombifeld anwendet.
Den Aufbau der Tabellen habe ich ja schon oben angegeben. Meine SQL - Abfrage, die ich nun gerne auf Kombifeld 2 anwenden würde, wäre:
SELECT tbl_Themen.THE_Name FROM tbl_Themen WHERE(tbl_Themen.THE_BER_ID = " & Bereich & ");
dabei ist in diesem Fall Bereich die Variable, die die Bereichs_ID enthält. Im Kombifeld 1 wird ja der BER_Name ausgewählt, der aber eindeutig der BER_ID zugeordnet ist.
Aber wie??? Schaffe es in VBA, dass aus dem ausgewählten Bereichsnamen in Kombifeld1 die BER_ID ermitteln kann und diese der Variable Bereich zuordne.
Aber ich weiß nicht:
- welchem Variablentyp (Datentyp) ich mein Abfrageergebnis zuordnen kann
- und wie ich dieses Ergebnis dann dem Kombifeld 2 zuordnen kann.
Oder gibt es doch noch einen viel einfacheren Wert über Makros.. ?
SOS aber schon einmal vielen Dank für die Hilfe
Simone
vielen Dank für Deinen Tipp. Komme aber trotzdem noch nicht ganz klar. SQL ist glaub nicht das Problem, sondern mehr, wie ich das Makro genau gestalten muss, dass dann den Filter für das zweite Kombifeld anwendet.
Den Aufbau der Tabellen habe ich ja schon oben angegeben. Meine SQL - Abfrage, die ich nun gerne auf Kombifeld 2 anwenden würde, wäre:
SELECT tbl_Themen.THE_Name FROM tbl_Themen WHERE(tbl_Themen.THE_BER_ID = " & Bereich & ");
dabei ist in diesem Fall Bereich die Variable, die die Bereichs_ID enthält. Im Kombifeld 1 wird ja der BER_Name ausgewählt, der aber eindeutig der BER_ID zugeordnet ist.
Aber wie??? Schaffe es in VBA, dass aus dem ausgewählten Bereichsnamen in Kombifeld1 die BER_ID ermitteln kann und diese der Variable Bereich zuordne.
Aber ich weiß nicht:
- welchem Variablentyp (Datentyp) ich mein Abfrageergebnis zuordnen kann
- und wie ich dieses Ergebnis dann dem Kombifeld 2 zuordnen kann.
Oder gibt es doch noch einen viel einfacheren Wert über Makros.. ?
SOS aber schon einmal vielen Dank für die Hilfe
Simone