Beitrag aus SmartTools Access Weekly
Suche nach Eingabe des Suchbegriffs und 'Return' sofort starten
Access 365 2024 2021 2019 2016 2013 2010
FRAGE Ich verwende ein Suchfeld in einem Formular zusammen mit einer Schaltfläche, die die Suche startet. Wenn ich nach dem Ausfüllen des Suchfeldes Return drücke, erhält die Schaltfläche den Fokus und erst durch nochmaliges Drücken von Return oder per Mausklick wird die Suche ausgeführt. Wie muss der VBA-Code aussehen, damit die Suche nach dem Ausfüllen des Suchfeldes sofort mit Return gestartet wird?
R. Friedrich
ANTWORT Nutzen Sie dazu die Ereignisprozedur "Bei Taste Ab" des Textfeldes und geben Sie folgenden Code ein:
Private Sub txtSuchen_KeyDown(KeyCode As Integer, _
Shift As Integer)
If KeyCode = 13 Then
btnSuchen_Click
KeyCode = 0
End If
End Sub
Statt "txtSuchen" und "btnSuchen" verwenden Sie die Namen des Textfeldes bzw. der Schaltfläche in Ihrem Formular. Mit dem Parameter "KeyCode" wird der Code der gedrückten Taste übergeben, den wir hier auf "13", dem Wert für die Return-Taste, prüfen. Bei Übereinstimmung ruft die folgende Anweisung die Ereignisprozedur "Beim Klicken" der Schaltfläche "btnSuchen" auf und der dort vorhandene VBA-Code führt die Suche aus. Mit der Zuweisung "KeyCode = 0" informieren wir Access, dass das Drücken der Taste behandelt wurde und es keine weiteren Aktionen unternehmen soll.