Ich habe nach einer Möglichkeit zum Kopieren oder Kopieren eines Recordset in VBA gesucht. Und damit meine ich, dass die zugrunde liegenden Daten unabhängig voneinander sind.Deep Copy oder Clone ein ADODB-Recordset in VBA
habe ich versucht
Set copyRS = origRS.Clone
Set copyRS = origRS
Wenn ich jede der Methoden I cant einem Cord-modifizieren, ohne die andere zu verändern. So in diesem Beispiel:
- ich ein Re-Cord
- erstellen bevöl ich das Re-Cord mit dem Namen John
- ich das Re-Cord klonen
- ich das geklonte ein
- Prüfergebnis
Code:
Dim origRS As Recordset, copyRS As Recordset
Set origRS = New Recordset
'Create field
origRS.Fields.Append "Name", adChar, 10, adFldUpdatable
origRS.Open
'Add name
origRS.AddNew "Name", "John"
'Clone/copy
Set copyRS = origRS.Clone
'Change record in cloned/copied recordset
copyRS.MoveFirst
copyRS!Name = "James"
'This should give me "JamesJohn"
MsgBox copyRS.Fields(0).Value & origRS.Fields(0)
Aber leider für mich, dies ändert beiden Cord-Sets
Meine Frage ist:
Gibt es eine Möglichkeit, ein Recordset von einem anderen Recordset zu kopieren und dann die Daten unabhängig voneinander ändern (ohne Looping)?
Ich weiß, dass Sie es offensichtlich durch eine Schleife tun können, aber gibt es keinen anderen Weg?
Brilliant !! Ich habe lange gesucht !! –