Access VBA 質問スレ Part2 (788レス)
Access VBA 質問スレ Part2 http://mevius.5ch.net/test/read.cgi/tech/1544620479/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
193: デフォルトの名無しさん [sage] 2021/01/13(水) 17:50:48.61 ID:+yZZ5ziS Windows10、Access365です。 Excelファイル上のデータに対して、ADOでアクセスして、データを取り込んでいるのですが、時間がかかります。 時間を短縮する方法はないでしょうか。 データは1ヶ月分9万件程度ですが、Accessのテーブルに取り込むのに、7分程度かかります。 テーブルのレコードの追加は、データ1件1件に対して、ADOのAddNewメソッド、Updateメソッドで追加しています。 試しに手動でAccessのインポート機能を使用して1ヶ月分のデータを取り込んでみたのですが、時間はかからなかったのですが、F20、F21など、空白の列まで要求されました。 そのためこの手段はあまり良くないと思っています。 レコードセットを一気にInsertする方法とかないでしょうか。 よろしくお願いします。 http://mevius.5ch.net/test/read.cgi/tech/1544620479/193
196: デフォルトの名無しさん [sage] 2021/01/14(木) 03:34:32.57 ID:eeXKDacn >>193 レコードセットで要求の動作はできないと思われます 以下はレコードセットを使わない方法になります 前提として ・現在取込時にレコードセットを編集していない ・SQL が書ける INSERT 文で ・「IN 句」に Excel ファイルを指定 ・追加先テーブルに Access テーブルを指定 これでインポートと同等のパフォーマンスになると思います 詳細は MS のリファレンスを参照 https://docs.microsoft.com/ja-jp/office/vba/access/concepts/miscellaneous/in-clause-microsoft-access-sql 今(.xlsx)だと EXCEL 12.0 になります http://mevius.5ch.net/test/read.cgi/tech/1544620479/196
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.837s*