テーブル内容を新規エクセルシートへ転記
Sub テーブル内容を新規エクセルシートへ転記() Dim myCon As New ADODB.Connection Dim DataBook As String, ReportBook As String Dim myTbl As String, myNewSht As String, tmpStr As String '接続先のファイル、、転記先エクセルファイル、取込元テーブル、取込先シートを指定 DataBook = ThisWorkbook.Path & "\mdb\2-sampleDB.mdb" ReportBook = ThisWorkbook.Path & "\xls\4-19_1 Accessのテーブル内容を書き出す.xls" myTbl = "伝票一覧;" myNewSht = "抽出した伝票一覧テーブル" '書き込み文字列を作成 tmpStr = "[Excel 8.0;DATABASE=" & ReportBook & "].[" & myNewSht & "]" With myCon .Provider = "Microsoft.Jet.OLEDB.4.0" .Open DataBook .Execute "SELECT * INTO " & tmpStr & " FROM " & myTbl End With myCon.Close: Set myCon = Nothing End Sub
上記のリストはAccessのテーブル内容をExcelブックの新規シートに転記する基本形である。
変数 | 変数の内容 |
---|---|
DataBook | 取り込み元の「mdb」ファイル |
ReportBook | 書き出し先のExcelブック |
myTbl | 取り込み元となるテーブル、クエリ、SQL文も使用可能 |
myNewSht | 転記先となるエクセルの新規シート |
指定したExcelブックがない場合には、自動的に新規シートを持つExcelブックが作成される。
指定したExcelブックに同名シートがすでに存在する場合は、エラーとなる。
実行結果
エラー画面