Sub test()
'アクセスへADOで接続して、データを抽出する
'事前に[ツール]-[参照設定]より
'Microsoft ActiveX Data Objects x.x Library にチェックマークを入れておく
'画面の更新を止める
Application.ScreenUpdating = False
'↓↓↓ADO↓↓↓
Dim myCn As New ADODB.Connection
Dim myRs As New ADODB.Recordset
Dim myFile As Variant
'myFile に読み込むデータの保存先を設定する(適宜変更必要)
'(今回は設定シートのA1セルにアドレスがあるとする)
myFile = ThisWorkbook.Sheets("設定").Cells(1, 1).Value
With myCn
.Provider = "Microsoft.Ace.OLEDB.12.0"
.Properties("Data Source") = myFile
.Open
End With
'SQL文(適宜変更必要)
'excelとは書き方が異なる(テーブル名は[ $]で囲わなくとも良い)
myRs.Open "SELECT * FROM KEN_ALL;", myCn
'データシートの...
With ThisWorkbook.Sheets("データ")
.Cells.Clear '以前抽出したデータを削除する
.Cells(2, 1).CopyFromRecordset myRs 'A2セルにSQLで抽出したデータを取り込む
End With
'メモリをクリア
myRs.Close
Set myRs = Nothing
myCn.Close
Set myCn = Nothing
'↑↑↑ADO↑↑↑
'画面の更新再開
Application.ScreenUpdating = True
MsgBox "OK"
End Sub