よろしくお願いします。
ACCESS VBA を使用して、既存のEXCELファイルにデータを出力しているのですが、すごく時間がかかってしまいます。件数が少ない時はそれほど気にならないのですが。時間短縮する方法を教えてください。
Sub S_ExportExcel_ADO()
Dim CN As ADODB.Connection
Dim rst As ADODB.Recordset
Dim objExcel As Excel.Application
Dim i As Integer
Dim W_SQL As String
On Error GoTo Err_S_ExportExcel_ADO
Set objExcel = New Excel.Application
objExcel.Workbooks.Open ("test.xls")
objExcel.Worksheets("sheet1").Select
Set CN = CurrentProject.Connection
Set rst = New ADODB.Recordset
W_SQL = "SELECT * FROM データ"
rst.Open W_SQL, CN, adOpenKeyset, adLockReadOnly
i = 1
Do Until rst.EOF
objExcel.Cells(i, 4) = Trim("" & rst![データ1])
objExcel.Cells(i, 5) = Trim("" & rst![データ2])
objExcel.Cells(i, 6) = Trim("" & rst![データ3])
objExcel.Cells(i, 7) = Trim("" & rst![データ4])
objExcel.Cells(i, 9) = Trim("" & rst![データ5])
'***省略***
objExcel.Cells(i, 35) = Trim("" & rst![データ15])
objExcel.Cells(i, 36) = Trim("" & rst![データ16])
i = i + 1
rst.MoveNext
Loop
'EXCEL保存
objExcel.ActiveWorkbook.Close
objExcel.Quit
rst.Close
CN.Close
Set rst = Nothing
Set CN = Nothing
Set objExcel = Nothing
End Sub
No.1
- 回答日時:
Accessのマクロでワークシート変換(Excel形式でのエクスポート)を行うか、Excelの外部データの取り込み>データベースクエリで、Excelファイルにデータをとりこんでみては。
ビルトイン機能なので、VBAよりは処理速度が速いので。
No.2ベストアンサー
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) アクセス レポートを開いたときにパラメーターの自動入力がしたい 4 2022/11/30 11:21
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- Visual Basic(VBA) VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。 19 2022/07/26 13:07
- その他(Microsoft Office) マクロVBAについて 1 2022/09/06 18:12
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) vbaを早くしたい 5 2022/09/09 10:58
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
MS-Accessのエクスポートで異常に時間がかかるようになった
その他(データベース)
-
ACCESSでExcelにデータ出力、高速化
その他(プログラミング・Web制作)
-
accessの処理が遅い
その他(データベース)
-
-
4
Access クエリ実行が急に非常に遅くなりました。
Access(アクセス)
-
5
アクセスからエクセルのシートを追加して、名前をつける方法
Excel(エクセル)
-
6
AccessからExcelにエクスポートする時に常に上書きしたい
Excel(エクセル)
-
7
Access-VBAでExcelファイルを作成する。
Excel(エクセル)
-
8
アクセスvbaでエクセルブックを保存
その他(Microsoft Office)
-
9
Access VBAから使用したExcelプロセスを閉じる方法について
Visual Basic(VBA)
-
10
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
11
ACCESSのクエリーからEXCELにエクスポート時のエラー
Excel(エクセル)
-
12
ACCESSでVBAから選択クエリの抽出条件を指定したい
Access(アクセス)
-
13
ACCESSのVBAにてExcelのシートをコピーしたい
その他(データベース)
-
14
Access サブフォームでの選択行の取得
その他(データベース)
-
15
ACCESS、VBAでEXCELファイルをコピーはできますか
その他(データベース)
-
16
Access→Excelへエクスポートすると日付の表示形式が変化する
Excel(エクセル)
-
17
AccessVBAでExcelを起動し、罫線を引きたいのですが、Exc
Visual Basic(VBA)
-
18
ACCESSからexcelブックを開いて保存したい
Excel(エクセル)
-
19
更新不可能なクエリに対して更新クエリを実行する方法
Access(アクセス)
-
20
アクセス 壊れた? 「ファイルが見つかりません」
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのマクロでワードのテキス...
-
教えて下さい
-
プログラミング python pandas ...
-
【エクセル】測定時間がバラバ...
-
VBA 毎日取得するデータを順番...
-
配列でデータが入っている要素...
-
LoadPictureしたイメージデータ...
-
ADOを使用してExcelデータをAcc...
-
30Gも使えるはずなのに全然ネッ...
-
シリアル通信でのデータ受信
-
[エクセル]データの個数が2番目...
-
文字の上下反転処理
-
C#でヒストグラムの作り方
-
Matlab:plotで特定の値だけをプ...
-
ActiveReportについて
-
ディベートに関して質問です。...
-
[VBA] CountIfに変数を使いたい
-
エクセルについて
-
MATLAB:データの総数を数えるに...
-
テーブル2列目に2番目のデータ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
教えて下さい
-
【エクセル】測定時間がバラバ...
-
配列でデータが入っている要素...
-
多量のSUMIF式を軽くしたい
-
エクセルで2つの時系列のデー...
-
Excelのマクロでワードのテキス...
-
メモ帳(テキストデータ)をExc...
-
VBA 空白セルを削除ではない方...
-
VBAを使ってOutlookメール本文...
-
Accessで該当データにフラグを...
-
合計3TBのデータのハッシュ値を...
-
シーケンサにパソコンからアク...
-
S9タイプからXタイプにデータ...
-
カンマからスラッシュに
-
VBAでシートからコンボボックス...
-
VBA 毎日取得するデータを順番...
-
ビットシフトについて
-
ユーザーフォームのテキストボ...
-
EXCELVBAでSQLserverからデータ...
-
特定のデータの抽出方法を教え...
おすすめ情報