テーブル内容を新規エクセルシートへ転記

スポンサーリンク
スポンサーリンク

テーブル内容を新規エクセルシートへ転記

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ブックに同名シートがすでに存在する場合は、エラーとなる。

実行結果

エラー画面

スポンサーリンク
シェアする
スポンサーリンク
あんとんさんち 覚え書き