Wie erstelle ich sql String zum Füllen des Kombinationsfelds?
Hallo,
ich versuche gerade Access zu verstehen und habe nun ein Problem.
Ich habe zwei Kombinationsfelder:
- KombiFeld01
- KombiFeld02
Das zweite Kombinationsfeld soll abhängig von der Auswahl vom ersten Kombinationsfeld Einträge aus einer weiteren Tabelle anzeigen.
Das erste Kombinationsfeld wird bereits aus einer anderen Tabelle gefüllt.
Ich versuche also jetzt per VBA irgendwie einen Bezug von der Auswahl zur Tabelle zu erzeugen und komme nicht weiter.
Das sieht nun so aus (Variablen, weil ich nicht weiß wie ich die Spalten der Tabelle anhand der Auswahl im Kombinationsfeld auswählen soll):
Private Sub KombiFeld01_AfterUpdate()
Dim strSQL As String, Auswahl As String, Spalte As String, cbo As ComboBox, cbo2 As ComboBox
Set cbo = Me!KombiFeld01
Set cbo2 = Me!KombiFeld02
Select Case True
Case cbo = "Artikelbezeichnung"
Spalte = "Artikelbezeichnung"
Case cbo = "Artikel-Nummer"
Spalte = "ArtikelNummer"
Case cbo = "FA-Nummer"
Spalte = "FANummer"
Case cbo = "Fehlermeldung Nr."
Spalte = "Nr"
Case cbo = "Kunde"
Spalte = "KundeLang"
Case cbo = "Status"
Spalte = Me!KombiFeld01
Case cbo = "Zuständig"
Spalte = "zuständig"
End Select
strSQL = "SELECT DISTINCT '" & Spalte & "' FROM Fehlermeldungen ORDER BY '" & Spalte & "' WHERE '" & cbo & "' "
cbo2.RowSource = strSQL
End Sub
Ich verstehe nicht, wie Select where überhaupt funktioniert.
Vielleicht kann jemand helfen. Vielen Dank.
1 Antwort
Ich verstehe nicht, wie Select where überhaupt funktioniert.
WHERE definiert die Suchfilter. Hier haben nicht nur die Spalten zu stehen, sondern auch die Bedingungen, die von den Spalteninhalten erfüllt werden müssen.
Da gehört also ein Vergleichsoperator und ein Vergleichswert angegeben.
Zudem ist mir reichlich schleierhaft, was du mit dem Select Case da bewerkstelligen willst.
Abhängige Kombinationsfelder:
http://donkarl.com/ unter Access-FAQ - 4 Formulare - 4.36 Abhängige Kombi/Listenfelder
ich weiß auch nicht, wie ich die Tabellen überhaupt verknüpfen kann. Alle Beispiele die ich im Internet finde, passen nicht zu meinem Fall. Oder vielleicht geht das nicht? Mit EXcel VBA ist es so leicht.
Hi, ich hatte mir den Artikel bereits durchgelesen.
Select case, weil die Spaltennamen der Tabelle zu Kombifeld 2 abweichen von den Namen aus der Auswahl zu Kombifeld 1.
Ich habe leider gar keinen Plan, ich bekomme das erste Kombinationsfeld gefüllt.
Nun möchte ich anhand der Auswahl die Werte aus der dazugehörigen Spalte einer der anderen Tabelle anzeigen lassen.
Das ist wahrscheinlich nicht schwer, aber ich habe es noch nie gemacht. Bister nur Excel VBA.