Veröffentlicht 31. März 200322 j Hallo miteinander, wie kann ich in Access automatisch zu einem Datensatz springen? Habe dem Formular ein RecordSource zugewiesen, vor der Bearbeitung entferne ich den RecordSource, damit erst nach Bestätigung des Speicherknopfes die Daten in die Datenbank geschrieben werden. Wenn ich dem Formular dann aber nach der Bearbeitung wieder den RecordSource zuweise, zeigt er den ersten Datensatz an. Daher meine Frage, wie navigiere ich zu einem bestimmten Datensatz (z.B. Nr. 12)? Im normalen RecordSet wäre es einfach rs.MoveNext, doch Access muss daraus wieder eine Staatsorgie machen... MfG Christian P.S.: Nutze MS Access 2000, nur so als Info.
31. März 200322 j Die Suche hätte dir das gleiche Thema vor 5 Tagen gepostet gebracht. Vielleicht hilft es ja.
31. März 200322 j @Der Kleine: Habe dieses Thema auch gefunden, doch habe nicht so ganz verstanden was das RecordsetClone soll. @Alle: Habe versucht mit DoCmd.GoToRecord acDataForm, Me.Form.RecordSet, acGoTo, 10 zu arbeiten, doch er sagt mir als Fehlermeldung: Sie haben für eines der Argumente einen Ausdruck eingegeben, der nicht den für das Argument erforderlichen Datentyp hat. Kann jemand damit was anfangen?
31. März 200322 j Die Einstellung der Eigenschaft RecordsetClone eines Formulars stellt eine Kopie der Abfrage oder Tabelle dar, die dem Formular zugrundeliegt und von der Einstellung der Eigenschaft RecordSource des Formulars festgelegt wird. Basiert ein Formular z.B. auf einer Abfrage, so entspricht ein Verweis auf die Eigenschaft RecordsetClone dem Kopieren eines Recordset-Objekts unter Verwendung derselben Abfrage. Wenn Sie dann für das Formular einen Filter anwenden, wird das Recordset-Objekt der Filterung angepaßt. Praktisch setzt du damit einen Verweis auf den entsprechenden Datensatz und deklarierst ihn durch die nächste Zeile zum aktiven Datensatz. Wenn du dir deine ID (Nr.=12) in einer variablen merkst, die verbindung zum recordset wieder herstellst, kannst du durch die beiden Code-zeilen (mit der Bedingung : Me.RecordsetClone.FindFirst "[id] >= " & variable_id ) zum erwarteteten Datensatz springen. Probiers einfach mal.
31. März 200322 j Uuuups, das geht doch alles wesentlich einfacher... Habe einfach mal auf gut Glück Me.Form.RecordSet.Move x ausprobiert und siehe da, es funktioniert. Wird zwar nicht in der Eigenschaftenauswahl angezeigt, funzt jedoch einwandfrei. Hätte mich auch gewundert, wenn Access bei Formular Recordsets Ausnahmen gegenüber normalen Recordsets machen würde... Trotzdem danke an alle, manchmal dauert's halt ein bisschen länger ;-) Christian
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.