Exportera data från en tabell fält till ett annat är inte så komplicerat som du kanske tror . I Access kan du använda Visual Basic for Applications för att automatisera denna process . Den Recordset-objekt representerar poster i en tabell eller de poster som returneras från en fråga . Detta objekt används i VBA för att manipulera dessa data på rekordnivå . Du kan exportera data genom att loopa igenom posterna och lägga fältvärden till andra fält i samma tabell eller en annan tabell . Instruktioner
1
Klicka på " Databas Verktyg " och klicka på " Visual Basic " för att öppna Visual Basic Editor . Börja skapa en ny sub - proceduren genom att lägga till följande kod :
Private Sub copyFieldData ( )
2
Skapa följande variabler du använder för att kopiera data :
Dim sqlstr As String
Dim sourceRst Som Recordset
Dim targetRst Som Recordset
Dim rCntr As Integer
Dim dbs som databas
Set dbs = CurrentDb
3
Skapa en tom tabell med ett fält .
strSQL = " CREATE tABLE emptyTable "
strSQL = strSQL & " ( Förnamn TEXT ) "
DoCmd.RunSQL ( strSQL )
4
Öppna källan och tabeller mål med hjälp av ett Recordset .
Set targetRst = dbs.OpenRecordset ( " emptyTable " ) katalog
Set sourceRst = dbs.OpenRecordset ( " SELECT Anställda * FROM Anställda ; . " )
5
Skapa ett " för ... loop " till slinga genom alla rader i " förnamn " fältet från tabellen Anställda och exportera dem till " Förnamn " fältet i emptyTable .
sourceRst.MoveLast
sourceRst.MoveFirst
För rCntr = 0 att sourceRst.RecordCount - . . 1
targetRst.AddNew
targetRst.Fields ( " Förnamn " ) Värde = sourceRst.Fields ( " Förnamn " ) Värde
targetRst.Update
sourceRst.MoveNext
Nästa rCntr
6
Visa ett meddelande när den exporterande har slutförts .
MsgBox ( " Data från fältet Förnamn har exporterats " )
7
Avsluta proceduren genom att skriva " End Sub . " Tryck " F5 " för att köra proceduren .