아래 절차에 따라 Access 테이블에서 워크 시트로 데이터를 가져올 수 있습니다.

Sub ADOImportFromAccessTable(DBFullName As String, _

TableName As String, TargetRange As Range)

' Example: ADOImportFromAccessTable "C:\FolderName\DataBaseName.mdb", _

"TableName", Range("C1")

Dim cn As ADODB.Connection, rs As ADODB.Recordset, intColIndex As Integer

Set TargetRange = TargetRange.Cells(1, 1)

' open the database

Set cn = New ADODB.Connection

cn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _

DBFullName & ";"

Set rs = New ADODB.Recordset

With rs

' open the recordset

.Open TableName, cn, adOpenStatic, adLockOptimistic, adCmdTable

' all records

'.Open "SELECT * FROM " & TableName & _

" WHERE [FieldName] = 'MyCriteria'", cn, , , adCmdText

' filter records

RS2WS rs, TargetRange ' write data from the recordset to the worksheet

'        ' optional approach for Excel 2000 or later (RS2WS is not necessary)

'        For intColIndex = 0 To rs.Fields.Count - 1 ' the field names

'            TargetRange.Offset(0, intColIndex).Value = rs.Fields(intColIndex).Name

'        Next

'        TargetRange.Offset(1, 0).CopyFromRecordset rs ' the recordset data

End With

rs.Close

Set rs = Nothing

cn.Close

Set cn = Nothing

End Sub

매크로 예제에서는 VBA 프로젝트가 ADO 개체 라이브러리에 대한 참조를 추가했다고 가정합니다.

도구, 참조 메뉴를 선택하고 Microsoft ActiveX 데이터 개체 x.x 개체 라이브러리를 선택하여 VBE 내에서이 작업을 수행 할 수 있습니다.

데이터 가져 오기 또는 내보내기를 위해 ADO와 DAO 중에서 선택할 수있는 경우 ADO를 사용하십시오.