テーブル内容を転記する基本形その3 — SQL文で抽出する
Recordsetオブジェクトで受け取り、CopyFromRecordsetメソッドで転記
Sub シートに転記3() 'テーブル内容を転記する基本形その3 --- SQL文で抽出 Dim myCon As New ADODB.Connection, myRS As New ADODB.Recordset, FileName As String Dim myTbl As String, myRng As Range '接続先のファイル、取込元テーブル、取込先を指定 FileName = ThisWorkbook.Path & "\mdb\2-sampleDB.mdb" myTbl = "SELECT * FROM 社員 WHERE 所属='営業1課';" Set myRng = ThisWorkbook.Worksheets(1).Range("A1") '接続 With myCon .Provider = "Microsoft.Jet.OLEDB.4.0" .Open FileName End With With myRS '対象テーブルを参照、転記、閉じる .Open myTbl, myCon myRng.CopyFromRecordset myRS .Close End With 'Recordsetオブジェクトを破棄 Set myRS = Nothing 'データベースへの接続を切断し、オブジェクトを破棄 myCon.Close: Set myCon = Nothing End Sub
実行結果
上記のリストはExcelブックにAccessのテーブル内容を転記する基本形である。
変数 | 変数の内容 |
---|---|
FileName | 取り込み元の「mdb」ファイル |
myTbl | 取り込み元となるテーブル、クエリ、SQL文も使用可能 |
myRng | 転記先となるエクセルのセル番地 |