Acc2K - Formular - Nächster Datensatz

Hai, Profis,

ich wechsel in einem Formular die Datensätze mittels einer Schaltfläche; VB-Code per DoCmd.GoToRecord,acNext (VB weil da noch mehr passiert) - so weit, so gut. Nu ist die zugrunde liegende Tabelle aber irgendwann am Ende und es gibt 'ne Fehlermeldung (Sie können nicht zum angegebenen Datensatz springen)…Frage: Wie fange ich diese Fehlermeldung ab, bzw. verändere sie in die Richtung "Sie sind jetzt fertig, hier gibt’s nix mehr?

Gruß
Sibylle

Hallo Sybille,

den Fehler kannst du abfangen, wenn du in deiner VBA Routine als ersten Befehl einfügst

On Error goto Fehler

dann definierst du eine Sprungadresse Fehler

Fehler:

Dort fängst du den Fehler ab mit

fehler:
If Err.Number = xxxx Then exit sub

wobei du xxxx dadurch ermittelst, dass du dir die Fehlernummer notierst,die beim Anspringen eines Datensatzes am Ende deiner Tabelle entsteht.

Hoffe es hilft

Peter

Das Ganze einrahmen mit einer Error-Routine:
Für den Button Go to Previous etwa so:

On Error GoTo Err_cmd_MovePrevious_Click

DoCmd.GoToRecord , , acPrevious

Exit_cmd_MovePrevious_Click:
Exit Sub

Err_cmd_MovePrevious_Click:
MsgBox „Schluss hier!“, , „Achtung!“
Resume Exit_cmd_MovePrevious_Click


Für den Button Goto Next etwa so:

On Error GoTo Err_cmd_MoveNext_Click

DoCmd.GoToRecord , , acNext
If Me.NewRecord = True Then 'd.h., der letzte DS wurde übersprungen
DoCmd.GoToRecord , , acPrevious
If MsgBox(„Ende der Geschichte. Neuer Datensatz?“, vbYesNo, „Obacht!!“) = vbYes Then
DoCmd.OpenForm („MachWas“)
Exit Sub
Else
Exit Sub
End If

End If

Exit_cmd_MoveNext_Click:
Exit Sub

Err_cmd_MoveNext_Click:
MsgBox Err.Description
Resume Exit_cmd_MoveNext_Click

Dank Euch beiden owT