Warum noch ein Access-Buch?
Für wen ist das Buch?
Jetzt bestellen
+ direkter Download des eBooks!
Nur EUR 59,95!
Fehler gefunden?
Bitte melden!
Wünsche an das Buch?
Her damit!
Was denken die Leser über dieses Buch?
Lesen Sie aktuelle Rezensionen!
Kapitel des noch nicht veröffentlichten Buchs zum Downloaden, Probelesen und Kommentieren
Beispieldatenbanken
Zusätzliches Material

Das Buch im HTML-Format

Für unbestimmte Zeit bieten Addison-Wesley und André Minhorst den kompletten Inhalt des Buchs als Download an. Schauen Sie rein und informieren Sie sich über den Inhalt! Und wenn Ihnen das Buch nützlich erscheint und Sie glauben, dass Sie etwas gelernt haben oder durch das Gelesene sogar etwas Zeit und somit Geld bei Ihrer Arbeit einsparen konnten, können Sie sich ja beim Autor und beim Verlag revanchieren - beispielsweise durch den Kauf dieses Buchs.

Am schönsten wäre es natürlich, wenn Sie das Buch direkt hier bestellen - Sie erhalten das Buch dann direkt vom Verlag, und der Autor und Verlag haben dann noch mehr davon, als wenn Sie es anderswo kaufen.

Danke für Ihr Interesse!

10.4.2 Seek

10.4.3 Find

Die Find-Methode ist weniger flexibel als die Find...-Methoden von DAO. Sie fasst zwar die Funktion der Find...-Methoden von DAO zusammen, beschränkt allerdings beispielsweise die möglichen Kriterien auf ein einziges.

Die Find-Methode bietet vier Parameter, von denen nur die Angabe des Suchkriteriums Pflicht ist. Als Suchkriterium dient ein aus Feldname, Vergleichsoperator und Vergleichswert zusammengesetzter Ausdruck, wobei die gleichen Regeln wie für die WHERE-Klausel von SQL-Abfragen gelten (siehe auch Kapitel 8, »Access-SQL«). Die übrigen Parameter:

  • SkipRecords legt fest, wie viele Datensätze von der aktuellen Position aus übersprungen werden sollen, und ist beispielsweise wichtig, wenn Sie bereits einen Datensatz gefunden haben und bei der Suche des nächsten Datensatzes nicht auf dem aktuellen Datensatz stehen bleiben möchten.
  • SearchDirection erwartet eine der Konstanten adSearchForward oder adSearchBackward und sucht in der entsprechenden Richtung.
  • Start erwartet die Position des Datensatzzeigers für einen vom ersten Datensatz abweichenden Startpunkt.
  • Wenn die Find-Methode einen Datensatz findet, positioniert sie den Datensatzzeiger auf dem gefundenen Datensatz. Sollen weitere Datensätze gefunden werden, wie etwa im folgenden Beispiel, verwenden Sie innerhalb einer Do While-Schleife erneut die Find-Methode - mit dem gleichen Kriterium, aber dem Wert 1 für den Parameter SkipRecords. Dies hat den Grund, dass die Find-Methode mit der Suche immer in dem Datensatz beginnt, auf dem sich aktuell der Datensatzzeiger befindet.

    Eine solche Suche bedingt immer die Prüfung auf die Eigenschaft EOF oder BOF der Datensatzgruppe (je nach Suchrichtung), da dies die Position des Datensatzzeigers ist, wenn kein Datensatz gefunden wurde. Das entspricht dann der Eigenschaft Recordset.NoMatch unter DAO.

    Public Sub SuchenMitFind()

        Dim cnn As ADODB.Connection
        Dim rst As ADODB.Recordset
        Dim strKriterium As String

        Set cnn = CurrentProject.Connection
        Set rst = New ADODB.Recordset

        rst.Open "Artikel", cnn, adOpenKeyset, adLockOptimistic
        strKriterium = "[Artikelname] LIKE 'A*'"
        rst.Find strKriterium

        Do While Not rst.EOF
            Debug.Print rst!Artikelname
            rst.Find strKriterium, 1
        Loop
        ...
    End Sub

    Listing 10.22: Suche nach allen Datensätzen, deren Artikelname mit A beginnt

    Nächster Abschnitt:

    10.4.4 Filtern

    © 2006-2008 André Minhorst Alle Rechte vorbehalten.