こんにちは、引き続きファイルを希望のオーダー通りに処理するVBAをエクセルで組んでいます。
Microsoft Excel for Office 365 MSO (16.0.12430.20198) 64ビット環境で実行しています。
ここにきて
VBA
1Private Function fileOpener(File_Path As String) 2 Workbooks.Open File_Path 3End Function
の処理でアプリケーションが落ちることがままある(必ずではない)ことに頭を悩ませています。
このfileOpenerを呼び出す親ルーチンは
VBA
1 (略) 2 For cnt = LBound(File2Process) To UBound(File2Process) 3 If (File2Process(cnt) <> "") Then 4 fileOpener (File2Process(cnt)) 5 End If 6 Next cnt 7 (略)
で、このFile2Process配列はString型の配列で、ファイルのフルパスが入っています。
配列の内容に問題があると思えない根拠は、Workbook.openの際にブレイクポイントを入れて
ステップ実行すると成功するからです(5~10ファイル/50フォルダで確認ずみ)
お知恵をお借りいたしたく存じます。よろしくお願いします。
追記:Do Eventをカマす方法も考えてみましたがいままで、より大量のファイルを処理してきた
経験(同じサブルーチン内で、という限定はありますが)とできれば迅速に処理を行いたい事を鑑みて、可能な限り別の方法を募りたいと思っています。
回答3件
あなたの回答
tips
プレビュー