ich eine Abfrage zu filtern versuchen basierend auf dem Wert eines Elements in einem Listenfeld in bestimmten Spalt anders als die gebundenen SpalteZugang listbox nicht gebundene Spalte als Kriterien für die Suche nach
Hier ist, was ich bisher haben.
Ich habe eine Listbox mit 2 Säulen inv_id
und prod_id
Namen der listbox is lst_MainList
. inv_id
ist die gebundene Spalte (Spalte 1) Liste ist in einem Formular namens Projects
Ich versuche, 2 Abfragen zu erstellen.
Zunächst soll Abfrage filtern, basierend auf inv_id Diese einfach ist, weil inv_id meine gebundene Spalte ist
Für den Wert des zweiten Spalts bekommen, habe ich versucht,
Public Function GetColumnValue(col As Integer, ByRef lst As Access.ListBox)
GetColumnValue = lst.Column(col)
End Function
Die Idee, eine Funktion zu schaffen besteht darin, die Spaltennummer und den Listenfeldnamen an die Funktion zu übergeben, und die Funktion gibt den Wert dieser Spalte zurück
Funktion scheint OK. Das Problem ist, wenn ich diese Funktion zu meiner Anfrage als Kriterien eingeben
=GetColumnValue(2,[Forms]![Projects]![lst_MainList])
der Hoffnung, meine Frage zu filtern basierend auf Spalte 2 das aktuellen aktiven Elements, ich diese Fehlermeldung erhalten, wenn Abfrage ausgeführt wird.
This expression is typed incorrectly or is too complex
Ich weiß, hier meine letzte Option ist ein unsichtbares Textfeld Spalte 2 der listbox gebunden hinzufügen, aber ich mag die Funktion Ansatz versuchen, weil es viel sauberer und wiederverwendbar
Jede Idee scheint, was ist falsch mit meiner Funktion?
Dies funktioniert. Vielen Dank. Obwohl es ein bisschen kleine Korrektur gibt. Es sollte "s" (Plural Kontrolle) '... Control (ControlName) ...' sollte '... Kontrollen (ControlName) ...' – Wayne
Das ist richtig. Ich habe den Schnitt gemacht. – Gustav