Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datensatz einer Access Datenbank ändern

Datensatz einer Access Datenbank ändern
16.06.2024 22:12:38
Berndi
Hallo Gemeinde,

ich stehe gerade etwas auf dem Schlauch....

Ich Fülle aus einem Excel-Makro heraus eine Access-Datenbank


Option Explicit

Dim ldbMDB As Database
Dim lrsMDB As Recordset

Sub Datenbankeintrag(arrImport)

Dim X


Set ldbMDB = OpenDatabase(dbPath & "/" & dbName)
Set lrsMDB = ldbMDB.OpenRecordset("OSR", dbOpenDynaset)

lrsMDB.AddNew

For X = 1 To UBound(arrImport, 2)
lrsMDB.Fields(arrImport(0, X)) = arrImport(1, X)
Next
lrsMDB.Update

Exit Sub
Ausgang:
ldbMDB.Close

End Sub


Jetzt möchte ich aber bestehende Datensätze ändern, bzw- ergänzen.
Wie muss ich da vorgehen?
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datensatz einer Access Datenbank ändern
17.06.2024 09:32:46
Alwin Weisangler
Hallo,

mal abgesehen von elementaren Fehlern in der Variablendeklaration steckt hinter dieser Prozedur eine Datenbankzugriff via DAO.
Korrekte Dimensionierung wäre nebst Aktivierung der Bibliothek (da Early Binding) so:


Option Explicit
Private ldbMDB As DAO.Database
Private lrsMDB As DAO.Recordset

Da gibt es die Funktion .FindFirst.
Damit kann man eine eindeutige (am einfachsten PrimaryKey) Abfrage eines Datensatzes machen und diesen Datensatz mit den geänderten Werten überschreiben.
Voraussetzung dafür ist, dass der geänderte Datensatz aus dieser Tabelle der Datenbank geladen wurde.
Den zu ändernden Datensatz holen kann man am einfachsten und schnellsten mit einer ADODB Recordset Abfrage.
Mehr hier zu hinterlassen bringt nichts, zumal dies nur ein rudimentäres Codebeispiel von dir ist.

Gruß Uwe





Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige