DoCmd.SearchForRecord-Methode (Access)

Verwenden Sie die SearchForRecord-Methode , um nach einem bestimmten Datensatz in einer Tabelle, abfrage, einem Formular oder einem Bericht zu suchen.

Syntax

Ausdruck. SearchForRecord (ObjectType, ObjectName, Record, WhereCondition)

expression Eine Variable, die ein DoCmd-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
ObjectType Optional AcDataObjectType Eine AcDataObjectType-Konstante , die den Typ des Datenbankobjekts angibt, in dem Sie suchen. Der Standardwert lautet acActiveDataObject.
ObjectName Optional Variant Der Name des Datenbankobjekts, das den zu suchenden Datensatz enthält.
Record Optional AcRecord Eine AcRecord-Konstante , die den Ausgangspunkt und die Richtung der Suche angibt. Der Standardwert lautet acFirst.
WhereCondition Optional Variant Eine Zeichenfolge, die zum Finden des Datensatzes gefunden wird. Es ist wie die WHERE-Klausel in einer SQL-Anweisung, aber ohne das Wort WHERE.

HinwBemerkungeneise

In Fällen, in denen mehr als ein Datensatz den Kriterien im Argument WhereCondition entspricht, bestimmen die folgenden Faktoren, welcher Datensatz gefunden wird:

  • Die Einstellung des Record-Arguments .

  • Die Sortierreihenfolge der Datensätze. Wenn das Record-Argument beispielsweise auf acFirst festgelegt ist, kann sich der gefundene Datensatz ändern, wenn die Sortierreihenfolge der Datensätze geändert wird.

Das im Argument ObjectName angegebene Objekt muss geöffnet sein, bevor diese Aktion ausgeführt wird. Andernfalls, tritt ein Fehler auf.

Wenn die Kriterien im Argument WhereCondition nicht erfüllt sind, tritt kein Fehler auf, und der Fokus bleibt auf dem aktuellen Datensatz.

Beim Suchen nach dem vorherigen oder nächsten Datensatz wird die Suche nicht umbrochen, wenn sie das Ende der Daten erreicht. Falls keine weiteren Datensätze vorhanden sind, die mit den Kriterien übereinstimmen, tritt kein Fehler auf und der Fokus verbleibt auf dem aktuellen Datensatz. Um zu bestätigen, dass eine Übereinstimmung gefunden wurde, können Sie eine Bedingung für die nächste Aktion eingeben und die Bedingung mit den Kriterien im Argument WhereCondition identisch machen.

Die SearchForRecord-Methode ähnelt der FindRecord-Methode , aber SearchForRecord verfügt über leistungsfähigere Suchfunktionen. Die FindRecord -Methode wird hauptsächlich zum Suchen von Zeichenfolgen verwendet, und sie verdoppelt die Funktionalität des Dialogfelds Suchen. Die SearchForRecord -Methode verwendet Kriterien, die stärker jenen eines Filters oder einer SQL-Abfrage ähneln.

Die folgende Liste zeigt einige Dinge, die Sie mit der SearchForRecord-Methode ausführen können:

  • Verwenden Sie komplexe Kriterien im Argument WhereCondition , z Description = "Beverages" and CategoryID = 11. B. .

  • Verweisen Sie auf Felder, die sich in der Datensatzquelle eines Formulars oder Berichts befinden, aber nicht im Formular oder Bericht angezeigt werden. Im vorherigen Beispiel darf weder Description noch CategoryID im Formular oder Bericht angezeigt werden, damit die Kriterien funktionieren.

  • Verwenden Sie logische Operatoren wie <, , >, AND, OR und BETWEEN. Die FindRecord-Methode entspricht Zeichenfolgen, die mit der Zeichenfolge übereinstimmen, beginnen oder diese enthalten.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.