Access Code VBA?

2 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Also das Unterformular ist direkt im Hauptformular eingebunden? Dann kannst du es wie ein Steuerelement mit dem Namen ansprechen, den es gekriegt hat. Standardmäßig ist das der Name, unter dem das Unterformular gespeichert ist. Also in deinem Fall Me.InstallationskeysFormular.Form.

Mir ist nicht so ganz klar, was du mit dem Code vorhast. Du scheinst auf den ersten Datensatz gehen zu wollen, der mit dem gesuchten Text anfängt. Ich würde das Suchfeld ungebunden machen und die Datenbasis vom Unterformular an das Suchfeld anpassen:

Private Sub txtSuchen_Change()
Me.InstallationskeysFormular.Form.RecordSource = "SELECT * FROM Keys WHERE Produkt LIKE '" & Me!txtSuchen.Text & "*'"
End Sub

Außerdem ist natürlich die Frage, ob die Suche wirklich beim Change (also bei jedem Tastendruck) oder nur einmal am Ende der Eingabe (txtSuchen_AfterUpdate bzw. Ereignisprozedur "Nach Aktualisierung") ausgeführt werden soll. Je nachdem, wie viele Daten in der Tabelle stehen, kann es sonst sein, dass man die Suche nicht flüssig eingeben kann, weil eben nach jeder Taste gesucht wird und man erst weiterschreiben kann, wenn die Suche fertig ist.


HerkulesGamer 
Fragesteller
 08.07.2022, 11:10

die Tabelle ist nicht überdimensioniert groß und würde das gerne mit nach jeder Eingabe machen, ich möchte 2 von solchen Suchfeldern einbauen, damit man einmal nach Produkt und einmal nach beleg suchen kann

0
daCypher  08.07.2022, 11:40
@HerkulesGamer

Den Beleg kannst du im RecordSource einfach mit einbauen:

Me.InstallationskeysFormular.Form.RecordSource = "SELECT * FROM Keys WHERE Produkt LIKE '" & Me!txtSuchen.Text & "*' AND Beleg LIKE '" & Me.txtBelegSuchen.Text & "*'"
0