Start » VBA-exempel för Excel | Effektiva lösningar på konkreta problem » Excel | Interaktion med andra program » Importera Access-tabell till Excel via VBA

Importera Access-tabell till Excel via VBA





ms-accessFöljande Excel VBA-kod tar an sig uppgiften att importera en Access-databas till Excel.

Denna import till Excel kan vara praktisk att automatisera via makro om databasen uppdateras löpande och måste föras över till Excel med jämna mellanrum.

Access som program ingår i Office-sviten och heter numera Microsoft Office Access, vilket betyder att programmet med lätthet sammarbetar med Excel.

Sub Importera_Access()
 
'variabeldeklarering
Dim datConnection As ADODB.Connection
Dim recSet As ADODB.Recordset
Dim strDB, strSQL As String
Dim strTabell As String
Dim lngTabell As Long
Dim i As Long
 
'sökväg till Accessdatabasen
strDB = ThisWorkbook.Path & "" & "db.mdb"
'strDB = "C:vbadb.mdb" 'om den ligger i en annan folder

'namn på tabellen i Access
strTabell = "löner_2006"
 
'skapa kopplingen
Set datConnection = New ADODB.Connection
Set recSet = New ADODB.Recordset
datConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source =" & strDB & ";"
 
'SQL-förfrågan
strSQL = "SELECT * FROM " & strTabell & ""
recSet.Open strSQL, datConnection
 
'kopiera data från Access till Excel
ActiveSheet.Cells(2, 1).CopyFromRecordset recSet
 
'kopiera kolumnrubriker
lngCampos = recSet.Fields.Count
For i = 0 To lngCampos - 1
ActiveSheet.Cells(1, i + 1).Value = recSet.Fields(i).Name
Next
 
'stänga kopplingen
recSet.Close: Set recSet = Nothing
 
datConnection.Close: Set datConnection = Nothing
End Sub




Lämna en kommentar