Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


21610 / 76733 ←次へ | 前へ→

【60514】外部データ取込の処理時間短縮方法
質問  えあ  - 09/2/25(水) 15:40 -

引用なし
パスワード
   外部データの取り込み(Accessのクエリ)を、マクロの記録で記録したものが
下記になります。

Sub オートシェイプ24_Click()
With ActiveSheet.QueryTables.Add(Connection:=Array( _
    "OLEDB;Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=C:\Documents and Settings\XXXXXX\デスクトップ\ACCESS\共有管理マスタ.md" _
    , _
    "b;Mode=Share Deny Write;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Passwo" _
    , _
    "rd="""";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transa" _
    , _
    "ctions=1;Jet OLEDB:New Database Password="""";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Do" _
    , _
    "n't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False" _
    ), Destination:=Range("B2"))
    .CommandType = xlCmdTable
    .CommandText = Array("Q_使用済コード一覧")
    .Name = "共有管理マスタ Q_使用済コード一覧"
    .FieldNames = False
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlOverwriteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    .SourceConnectionFile = _
    "C:\Documents and Settings\XXXXXX\My Documents\My Data Sources\共有管理マスタ Q_使用済コード一覧.odc"
    .SourceDataFile = _
    "C:\Documents and Settings\XXXXXX\デスクトップ\ACCESS\共有管理マスタ.mdb"
    .Refresh BackgroundQuery:=False
  End With
End Sub

上記だと処理時間が非常にかかります。
処理時間を短縮させる妙案はないものでしょうか?
データは40000件程あります。

Excel2003,Access2003を利用しております。
宜しくお願いいたします
0 hits

【60514】外部データ取込の処理時間短縮方法 えあ 09/2/25(水) 15:40 質問

21610 / 76733 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free