Entschuldigung, wenn ich die falsche Terminologie habe. Ich versuche, ein Formular zu erstellen, bei dem der Benutzer das Feld aus einem Dropdown-Feld auswählt und anschließend den Suchtext in ein Textfeld eingibt. Das Formular sollte dann die Tabelle nach Datensätzen durchsuchen, die mit dem Text in dem in der Combobox angegebenen Feld übereinstimmen.Wert der Combobox als Feld übergeben
Aber was ich derzeit habe, funktioniert nicht. Ich weiß, wo der Fehler liegt, kann ihn aber nicht beheben.
Der aktuelle Code ist:
Private Sub btn_Search_Click()
Dim strSearchTerm As String
Dim strComboField As String
strComboField = Me!cmb_src
strSearchTerm = "SELECT Models.ID, Models.[Model Name], Models.[Model Brand], Models.[Model Category] " _
& "FROM Models " _
& "Where Fields(strComboField) LIKE '*" & Me.txtSearch & "*' " _
& "ORDER BY Models.[Model Name]; "
Me.sub_ModelList.Form.RecordSource = strSearchTerm
Me.sub_ModelList.Form.Requery
End Sub
Ich glaube, der Fehler in der Leitung ist
& "Where Fields(strComboField) LIKE '*" & Me.txtSearch & "*' " _
Als Ersatz Fields (strComboField) mit einem Feldnamen [Modellname ] löst sich gut.
Jede Hilfe sehr geschätzt
Dank
Versuch ' & "Where Fields" & strComboField & "LIKE '*" & Me.txtSearch & "*'" _'. Allerdings bin ich mir nicht sicher, es ist der einzige Fehler, den Sie haben, 'strComboField' bekommt einen Wert, dies ist nicht die Art, aus einer Combo-Box oder einer List-Box zu lesen –
danke, das hat nicht funktioniert, aber als du sagst vielleicht wegen der Art, wie ich aus der Combobox falsch lese. Ich werde sehen, ob ich das lösen kann. Der Fehler, der mir gegeben hat, war (fehlende operator0 im Abfrageausdruck 'Felder Modellname LIKE' * joystick * ".) – TerrorPenguin
Wenn Sie den Code mit F8 ausführen, liest' strComboField' den Wert korrekt aus der Benutzerformular-Combobox? es eine Combo-Box, List-Box oder ein Text? –