Gewusst wie: Kopieren aus einem Recordset in eine Tabelle in Access 2007

March 5

Gewusst wie: Kopieren aus einem Recordset in eine Tabelle in Access 2007

Stellen Sie Microsoft Access 2007-Datenbanken, dynamischer und automatisierte mit Visual Basic-Editor (VBE). Der VBE ist die Programmierung Schale, die im Lieferumfang von Access, die Visual Basic für Applikationen (VBA) verwendet. Eine der Funktionen von VBA ist es, Daten aus der Datenbank generieren und speichern Sie sie in einem Recordset, die abgerufen und im Code bearbeitet werden kann. Sobald Sie mit dem Recordset im Code Arbeit fertig sind, können wieder die Tabelle, der Sie zog es aus speichern oder kopieren Sie ihn in eine andere Tabelle.

Anweisungen

1 Öffnen Sie Ihre Datenbank in Microsoft Access 2007, und öffnen Sie den Visual Basic-Editor. Klicken Sie auf die Registerkarte "Datenbanktools" und dann auf "Visual Basic" von der Gruppe "Makros & Code".

2 Klicken Sie auf den Menüpunkt "Einfügen" im Visual Basic-Editor und klicken Sie dann auf "Module". Oder haben Sie ein Formular oder einen vorherigen Modul, das Sie auf dieses Verfahren verwenden möchten, öffnen, die stattdessen per Doppelklick aus dem Projekt-Explorer-Fenster auf der linken Seite des Bildschirms.

3 Schreiben Sie die Prozedur, die das Recordset aus der Datenbank ziehen wird:

"Sub RecordsetExample()

Dim dbTest as Database 'The variable that will hold your database

Dim rsRecordset as Recordset 'The variable that will hold your recordset

Set dbTest = OpenDatabase("MyDatabase.mbd") 'Change this to the name of your database

With dbTest

set rsRecordset = .OpenRecordset("Table1",dbOpenTable) 'Change Table1 to the name of your table

End With"4

Schreiben Sie den Code, um das Recordset in eine andere Tabelle zu kopieren. Der Code sieht folgendermaßen aus:

"Dim SQL-Anweisung als Zeichenfolge

' Die Abfrage in Tabelle einfügen. Ändern von Tabelle2 in Namen Ihrer Tabelle

SQL = "INSERT INTO Tabelle2 VALUES" & RsRecordset

Mit rsRecordset

rsRecordset.MoveFirst

Do

rsRecordset.RunSQL(sqlStatement)

rsRecordset.MoveNext

Loop While Not rsRecordset.EOF

Enden mit"

5 Klicken Sie auf das Symbol "Speichern" im Visual Basic-Editor. Klicken Sie "Run (!)" Wenn Sie möchten, führen Sie die Prozedur und das Recordset jetzt in die Tabelle kopieren. Wenn dies nicht der Fall ist, schließen Sie den Visual Basic-Editor und klicken Sie auf "Office" und dann auf "Speichern Sie", um die Änderungen an der Datenbank zu speichern.