| 
 
  Elite Veteran
 
 Beiträge: 922
 
      Ort: Wien
 | Hallo, Günther! 
 
 grundguenther - 13.12.12   Die gängige Aufgabenstellung per VBA in einem Formular zu einen bestimmten Datensatz zu springen (z.B. nach einen Requery zum vorher aktuellen Datensatz), wird üblicherweise wie folgt gelöst (siehe auch Don Karl FAQ 4.5):
 
 AktID = Me.MyID
 Me.Requery
 Me.RecordsetClone.FindFirst "MyID=" & AktID
 Me.Bookmark = Me.RecordsetClone.Bookmark
 
 Daneben gibt es kürzere Varianten, die genauso zu funktionieren scheinen:
 Folgende Variante "verzichtet" auf das RecordsetClone und die Bookmarks:
 AktID = Me.MyID
 Me.Requery
 Me.Recordset.FindFirst "MyID=" & AktID
 
 Folgende Variante "verzichtet" auf das RecordsetClone und Findfirst:
 
 AktBM = Me.Bookmark
 Me.Requery
 Me.Bookmark = AktBM
 
 Meine Frage wäre nun: Wo ist der Haken bei den kürzeren Varianten. Es hat ja bestimmt einen Grund, warum Don Karl die erste weitergibt!
 
 Ich persönlich gebe seit einigen Jahren in etlichen Newsgroup- und Forenbeiträgen fast immer die zweite von dir genannte Variante weiter.
 
 In der FAQ steht noch die Variante aus den 90er-Jahren als das Formular-Recordset noch nicht direkt ansprechbar war und man den Clone verwenden musste. Der Vorteil dieser Clone-Variante ist, dass sie in allen Access-Versionen funktioniert, das Recordset erst ab Access 2000.
 
 Bis vor relativ kurzer Zeit waren Access97-Anwendungen noch recht verbreitet, inzwischen sind sie sicher seltener. Ich warte bei solchen Dingen immer gerne ein paar Jährchen bevor ich sie durch hypermoderne Dinge ersetze.
  Werde es aber bald mal tun. 
 Der dritten Methode würde ich nicht trauen, weil sie einen Fehler produziert, wenn das Lesezeichen nimmer da ist, weil der DS im Code oder sonstwie gelöscht wurde. Me.Recordset.FindFirst hingegen wechselt dann einfach nicht den DS und fertig.
 
 -----
 Servus
 Karl
 *********
 Access-Entwickler-Konferenz: https://www.donkarl.com/?aek
 Access DevCon Vienna: https://www.donkarl.com/devcon
 Access Forever: https://www.accessforever.org
 Access News: https://www.youtube.com/playlist?list=PLVCeBbJIMDvdJ8ghMbEakJ6_EQyvy...
 |