Accessデータベースのモジュール内で作成されたExcelのインスタンスを使用して一連のExcelスプレッドシートを開こうとしています。ファイルを適切に開くことができます。ただし、実際にExcelを起動するための呼び出しにはかなりの時間がかかり、ファイルを開くにはさらに時間がかかります。ファイルの場所は問題ではありません(ローカルHDDをネットワークドライブとして開くときと同じです)。VBAファイルのオープンが遅い
何がそんなに長くかかっているかを調べるために、私はタイマーをロギングモジュールに追加しました。ファイルを開くには約2m30秒かかりますが、その間にホストアプリケーション(アクセス)はユーザーの入力に完全に反応しません。残りのスクリプトは10秒以内に実行されます。
Set OpenSpreadsheet = Excel.Workbooks.Open(Name, 2, False)
を次のように私はこの線を中心にDebug.Print
方法を使用して、標準Excel.Workbooks.Open
コールを使用していますが、それは実行するために、この1ライン分の2分半かかりますと言います。
Excelファイルをすばやく開くためにできることはありますか?
EDIT:UpdateLinks
はFalse
、ReadOnly
はTrue
です。他のすべてのオプションはデフォルト値のままです。
ドキュメントを開く方法を示すコードを追加して、+あなたが設定した参照を返信すると、より簡単に返信することができます。 しかし、確かに、10秒を超えるもの。長いです。 –
同意、+ 1 ...メソッドを確認する必要があります。 – Smandoli
私は、私が作っている呼び出しを追加し、1行の実行にかかる時間を記録しました。 –