CopyFromRecordset on ilmselt lihtsaim viis andmete tabamiseks Accessi tabelist Exceli töölehele.
Sub DAOCopyFromRecordSet (DBFullName As String, TableName As String, _ FieldName As String, TargetRange As Range) 'Näide: DAOCopyFromRecordSet "C: \ FolderName \ DataBaseName.mdb", _ "TableName", "FieldName", Range ("Cage") Dim db andmebaasina, rs kirjete komplektina Dim intColIndex täisarvuna Määra TargetRange = TargetRange.Cells (1, 1) Set db = OpenDatabase (DBFullName) Set rs = db.OpenRecordset (TableName, dbOpenTable) 'all records' Set rs = db. OpenRecordset ("SELECT * FROM" & TableName & _ "WHERE" & FieldName & _ "= 'MyCriteria'", dbReadOnly) "filtrikirjed" kirjutavad väljade nimed intColIndex = 0 To rs.Fields.Count - 1 TargetRange.Offset ( 0, intColIndex) .Value = rs.Fields (intColIndex). Nimi Järgmine 'kirjutage kirjehulk TargetRange.Offset (1, 0) .CopyFromRecordset rs Set rs = Ei midagi db.Sulge komplekt db = Ei midagi Alam
Kui soovite andmete importimisel rohkem kontrolli saada, saate allolevat makro kohandada.
Alam DAOFromAccessToExcel (DBFullName As String, TableName As String, _ FieldName As String, TargetRange As Range) 'Näide: DAOFromAccessToExcel "C: \ FolderName \ DataBaseName.mdb", _ "TableName", "FieldName", Range ("B" Dim db andmebaasina, rs kirjete kogumina Dim lngRowIndex kui pikalt määratud TargetRange = TargetRange.Cells (1, 1) Set db = OpenDatabase (DBFullName) Set rs = db.OpenRecordset (TableName, dbOpenTable) 'all records' Set rs = DB. OpenRecordset ("SELECT * FROM" & _ TableName & "WHERE" & FieldName & _ "= 'MyCriteria'", dbReadOnly) filtri kirjed lngRowIndex = 0 rs Kui ei .BOF Siis .MoveFirst Kuigi mitte .EOF TargetRange.Offset ( lngRowIndex, 0). Vormel = .Fields (FieldName). MoveNext lngRowIndex = lngRowIndex + 1 Wend End With Set rs = Nothing db. Sulge komplekt db = Pole End Sub
Makronäited eeldavad, et teie VBA projekt on lisanud viite DAO objektiteekile.
Seda saate teha VBE -s, valides menüü Tools, References ja Microsoft DAO x.xx Object Library.
Kasutage ADO -d, kui saate andmete importimiseks või eksportimiseks valida ADO ja DAO vahel.