- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ACCESSでExcelにデータ出力、高速化)
ACCESSでExcelにデータ出力、高速化
このQ&Aのポイント
- ACCESSのVBAを使ってテーブルのデータを既存ブックに出力し、別名で保存をしたいのですが、処理が遅くて困っています。
- Excelデータの高速出力を実現するために、ACCESSのVBAを使用してテーブルのデータを既存ブックに出力し、別名で保存する方法を教えてください。
- ACCESSでテーブルのデータをExcelに効率良く出力する方法が知りたいです。処理が遅いため、高速化のアイデアを教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
内容吟味しないで申し訳ないですけど、既成のマクロでスプレッドシートにエクスポートするマクロが あるので、それをつかったらどうでしょうか。 多分、レコードを1つづつ呼び出して書き込むよりかは早いかと。 ヘルプを見たところVBAでは、 docmd.TransferSpreadsheet(TransferType, SpreadsheetType, TableName, FileName, HasFieldNames, Range, UseOA) を使うようです。 使い方の詳細は、ヘルプから参照して速さを比較してください。
お礼
すみません、上記コードのセル消去部分とTransferSpreadsheetを 組み合わせて、かなり時間短縮することができました! ありがとうございます!
補足
TransferSpreadsheet だと、 確かに指定シートに出力はできますが別名保存はできませんよね? Excelの元データに出力して別名保存したいのですが・・・。 一応上記のコードだと、理想通りの処理が行われているのですが、 CopyFromRecordset の部分でかなり処理に時間がかかっています。 スプレッドシートというのは始めて聞きました、 ちょっと調べてみます ありがとうございます。