- 締切済み
長時間の計算のときだけバグになる?[ExcelVBA]
ExcelVBAでシミュレーションの計算をさせています。 for nextでループさせながら12時間くらい計算→ブック保存→PCシャットダウン、という流れです。 仕事場でプログラムを走らせてから帰宅し、翌朝チェックしてみるとなぜか計算結果が保存されていません(ちゃんとマクロは走り始めています)。 アルゴリズムは変えないまま、step数を大きくし、短い時間で計算が終わるようにしてテストしてみると上手く保存されています。ところが、これだと計算が粗いので仕事になりません。 このような状況はなぜ起きるのでしょうか(プログラムが原因?ハードウェアが原因?)? また、防ぐにはどうしたら良いでしょうか?
- みんなの回答 (2)
- 専門家の回答
補足
コメントありがとうございます。 >どこまで実行されていますか? step数が大きい場合は、全て実行されます。 また、翌朝チェックしてみると、計算結果が一切保存されていません。計算が始まるのは目視確認しているので間違いありません。 >起動もマクロなんですか? PC起動もマクロ実行開始もマクロです。 >まさか、中断・終了判定に「時」を用いていて、なんてことは? for nextのループが終了した時点で、保存→終了としています。 >>for ~ next ですから途中にif文をはさみ、何千回かごとに一回「上書き保存」をさせてみては? こちら↑大変参考になりました!次からやってみます。