【ExcelVBA】
Excelマクロを実行した時、以下の環境でのみで発生する
オートメーションエラーで悩まされています。
発生環境
①:Windows7(64Bit)、Office2010(32Bit)
②:Windows10(64Bit)、Office2010(32Bit)
発生しているエラーは「実行時エラー -2147417848(80010108)
オートメーションエラーです。」というものです。
また、問題のExcelマクロですが拡張子が「.xls」であり、
Excel2003で作成したマクロであり、現在まで使用し続けている状態です。
エラーが発生する箇所は、以下のようなファイルオープン→シート取得→ファイルクローズを
繰り返し処理を行っている中での「ファイルオープン」箇所となります。
<繰り返し処理>
①対象のExcelファイルをオープンする
↓
②①でオープンしたExcelファイルからシートをコピーし、
自身のExcelマクロにコピーする。
↓
③①でオープンしたExcelファイルを閉じる。
↓
④①に戻り、次のExcelファイルをオープンする。
<エラーが発生するソース箇所>
Workbooks.Open PathFileName, passWord:=protectPass, readOnly:=False
※上記のイメージ図だと①でエラーが発生します。
ただ、エラーが発生するExcelファイルが決まっていません。
※例えば30番目のファイルでエラーが発生したかと思えば、
次は30番目のファイルは正常に読み込めるのに、35番目でエラーが発生する、など
基本は若い番目のファイルは正常にファイルオープンが行われています。
Workbooks.Openの前に「Application.Wait Now() + TimeValue("00:00:01")」
というような指定時間だけマクロを停止させる処理を追加したところ、
正常に動作しております。
一時しのぎで対応しているとはいえ、原因が特定できないため、
恒久対応が取れない状態です。
ご回答の程をよろしくお願いいたします。
