Ändern eines vorhandenen Datensatzes in einem DAO-Recordset

Sie können vorhandene Datensätze in einem Recordset-Objekt vom Typ Tabelle oder Dynaset ändern, indem Sie die Methoden Edit und Update verwenden.

So ändern Sie einen vorhandenen Datensatz in einem Recordset-Objekt vom Typ Tabelle oder Dynaset:

  1. Wechseln Sie zu dem Datensatz, der geändert werden soll.

  2. Verwenden Sie die Edit-Methode, um den aktuellen Datensatz für die Bearbeitung vorzubereiten.

  3. Nehmen Sie die erforderlichen Änderungen am Datensatz vor.

  4. Verwenden Sie die Update-Methode, um die Änderungen am Datensatz zu speichern.

Im folgenden Codebeispiel wird gezeigt, wie in der Tabelle "Employees" (Personal) die Positionen für alle Vertriebsmitarbeiter ("Sales Representative") geändert werden:

Dim dbsNorthwind As DAO.Database 
Dim rstEmployees As DAO.Recordset 
 
   Set dbsNorthwind = CurrentDb 
   Set rstEmployees = dbsNorthwind.OpenRecordset("Employees") 
 
   rstEmployees.MoveFirst 
   Do Until rstEmployees.EOF 
      If rstEmployees!Title = "Sales Representative" Then 
         rstEmployees.Edit 
         rstEmployees!Title = "Account Executive" 
         rstEmployees.Update 
      End If 
      rstEmployees.MoveNext 
   Loop 

Hinweis

Wenn Sie die Edit-Methode nicht verwenden, bevor Sie versuchen, einen Wert im aktuellen Datensatz zu ändern, tritt ein Laufzeitfehler auf. Wenn Sie den aktuellen Datensatz bearbeiten und dann zu einem anderen Datensatz wechseln oder das Recordset -Objekt schließen, ohne zuerst die Update -Methode zu verwenden, gehen alle Änderungen ohne weitere Warnung verloren. Wenn Sie beispielsweise die Update -Methode im vorherigen Beispiel auslassen, werden an der Tabelle Employees keine Änderungen vorgenommen.

Sie können auch die Edit-Methode und alle ausstehenden Transaktionen beenden, ohne Änderungen zu speichern, indem Sie die CancelUpdate-Methode verwenden. Zwar können Sie die Edit -Methode abbrechen, indem Sie einfach zu einem anderen Datensatz wechseln, aber dies ist nicht sehr praktisch, wenn es sich beim aktuellen Datensatz um den ersten oder letzten Datensatz im Recordset -Objekt oder um einen neuen Datensatz handelt. Es ist im Allgemeinen einfacher, die CancelUpdate-Methode zu verwenden.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.