###Excel2010のVBAにて別Bookを開きたい
Windows107(32bit)、Excel2010の環境にて
ExcelVBAにて別のBookを開く際にエラーが出て
Bookを開くことが出来ない
追記
Excel2010 Version14.0.7015.1000(32ビット)
開こうとしているBookに関して
・.xlsxファイル(このファイルを生成したExcelのVersionは不明)
・シート数30弱
・マクロ等はしこまれていない
###発生している問題・エラーメッセージ
特定のPCでのみで発生しており
他のPCではエラーは発生せずに正常稼動している
エラーの出ている特定のPCでも10月時点では動作を確認しており
11月中旬あたりで下記のエラーが出るようになった
エラーが発生している特定のPCが手元に無いため
10月~11月中旬ごろの間に、どのような変更があったかは不明
エラー番号:1004
エラー内容:WorkbooksクラスのOpenプロパティを取得できません
###該当のソースコード
VBA
1Dim xlapp As Variant 2Set xlapp = CreateObject("excel.application") 3xlapp.Visible = False 4 5'ファイルの存在チェック 6If Dir(filepath) = "" Then 7 GoTo Continue 8End If 9 10Set xlbooks = xlapp.Workbooks 11’ここでエラーが発生 12Set work_book = xlbooks.Open(filepath, ReadOnly:=True)
###試したこと
下記のことを試しても改善、及び現象の再現はしていない状況です
1.別Verのエクセルが導入された可能性を見越してExcelのVerをチェック
VBA
1If xlapp.Version <> 14# Then 2 Dim old_ver As Double 3 old_ver = xlapp.Version 4 xlapp.Quit 5 MsgBox "ExcelVer切り替え:" & old_ver 6 Set xlapp = CreateObject("excel.application.14") 7 Call m_output_log.output_log("ExcelVer切り替え:" & old_ver) 8End If
2.開こうとしているBookが他のアプリで使用されている可能性を見越してコピーをとり、コピーしたファイルを開く
3.開こうとしているBookのアクセス権限を変更する
4.負荷テストとしてExcelのプロセスを50個ほど立ち上げる
5.負荷テストとして、別アプリにて物理メモリを食いつぶしてみる
6.CreateObjectを使用せずに下記のコードでのOpen
VBA
1 Set work_book = Workbooks.Open(report_file, ReadOnly:=True)
###補足情報
特定のPCで使用しているファイルを別PCにコピーして実行してもエラーが出ない為
特定PCの環境依存の問題かと思われます
拙い文章かつ少ない情報ですが
お心当たりのある方、アドバイスをいただければ幸いです

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/22 04:19
2017/12/22 06:30
2017/12/22 07:56