即効テクニック |
● 概要 ● AccessのテーブルのデータをExcelのRangeオブジェクトのCopyFromRecordsetメソッドを用いてExcelシートに貼り付けます。 CopyFromRecordsetメソッドの書式は、expression.CopyFromRecordset(Data, MaxRows, MaxColumns)となります。 ここでは第1引数に「都道府県」テーブルのRecordsetを指定してExcelシートに貼り付けています。第2,3引数は省略可能です。省略した場合はRecordsetの全てのデータがコピーされます。 expressionにはコピー先のExcelシート上の位置を指定します。なお、CopyFromRecordsetメソッドはDAOのRecordsetのみ使用可能です。 ● サンプルプログラム ● Private Sub ExportExcel_DAO() Dim DB As Database Dim rst As Recordset Dim objExcel As Excel.Application Set DB = OpenDatabase("d:\northwind.mdb") Set rst = DB.OpenRecordset("都道府県", dbOpenTable) '出力先のExcelファイルを指定 Set objExcel = New Excel.Application objExcel.Workbooks.Open ("d:\都道府県.xls") objExcel.Worksheets("Sheet1").Select 'RecordSetオブジェクトをExcelシートにコピー objExcel.Cells(1, 1).CopyFromRecordset rst objExcel.Quit rst.Close DB.Close Set DB = Nothing Set rst = Nothing Set objExcel = Nothing MsgBox "終了" End Sub ● 動作確認 ● Excelファイル「都道府県.xls」のsheet1に「都道府県」テーブルのデータがコピーされていることを確認してください。