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!

9.7.4 Zu bestimmten Datensätzen springen

9.7.5 Aktuelle Position des Datensatzzeigers ermitteln

Die aktuelle Position des Datensatzzeigers lässt sich mit den beiden Eigenschaften AbsolutePosition und PercentPosition ermitteln. Die folgende Routine springt zunächst auf den ersten Datensatz und gibt die absolute und die prozentuale Position aus; dann folgt dieselbe Ausgabe für den letzten Datensatz:

Public Sub Datensatzposition()

    Dim db As DAO.Database
    Dim rst As DAO.Recordset2
    Set db = CurrentDb
    Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenDynaset)

    rst.MoveFirst

    Debug.Print "Absolut: " & rst.AbsolutePosition _
        & " Prozentual: " & rst.PercentPosition

    rst.MoveLast

    Debug.Print "Absolut: " & rst.AbsolutePosition _
        & " Prozentual: " & rst.PercentPosition

    rst.Close

    Set rst = Nothing
    Set db = Nothing

End Sub

Listing 9.27: Ausgabe der absoluten und der prozentualen Position des Datensatzzeigers für den ersten und den letzten Datensatz

Andersherum lassen sich die beiden Eigenschaften auch dazu verwenden, die Position des Datensatzzeigers festzulegen - dazu weisen Sie einer der Eigenschaften einfach den gewünschten Wert zu. Im Falle des prozentualen Wertes landet der Datensatzzeiger auf dem nächstliegenden Datensatz.

Datensatzzeiger im Niemandsland

Manchmal macht der Datensatzzeiger seinem Namen nicht gerade Ehre: Dann landet er vor dem ersten oder hinter dem letzten Datensatz. Eine der Eigenschaften, die diesen Zustand abfragt, haben Sie bereits weiter oben kennen gelernt: Dort prüfte die EOF-Eigenschaft, ob der Datensatzzeiger sich hinter dem letzten Zeiger befindet. Die Eigenschaft BOF prüft das Gegenteil, nämlich ob der Datensatzzeiger sich vor dem ersten Datensatz befindet. Zu beachten ist hier, dass man einen Fehler auslöst, wenn man den Datensatzzeiger um mehr als eine Position über den Rand des Recordsets hinausschiebt.

Public Sub FehlerNachEOF()
    ...
    Set rst = db.OpenRecordset("tblMitarbeiter", dbOpenDynaset)

    rst.MoveLast
    Debug.Print rst.EOF

    rst.MoveNext
    Debug.Print rst.EOF
    rst.MoveNext 'hier wird ein Fehler ausgelöst
    ...
End Sub

Listing 9.28: Wenn EOF oder BOF den Wert True haben, darf der Datensatzzeiger nicht weiter vom Recordset wegbewegt werden

Nächster Abschnitt:

9.7.6 Anzahl der Datensätze ermitteln

© 2006-2008 André Minhorst Alle Rechte vorbehalten.