アプリ版:「スタンプのみでお礼する」機能のリリースについて

現在研究でEXCELのマクロを使って計算をさせています。
ソルバーをFor文で10000回以上回すマクロで、回し始めは一回ソルバーが回るのに1.5秒くらいなのですが、途中からいきなり問題を定式化する時間が長くなってしまう現象が起こります。
この現象が起こるときと起こらないときがあり、原因が分からず困っています。どなたか原因と対策を教えていただけないでしょうか?

OS:Windows XP
CPU:AMD Athlon(tm) 64 Processor 3500+ 2.19GHz
メモリ:512MB RAM
Excel:Excel 2003

A 回答 (2件)

こんにちは。



Excelに、物理的メモリにはほとんど影響はないはずです。Excelは、仮想メモリを使っていますが、それ自体は、マクロの速い遅いという問題は、複雑な計算を使っているとか、オブジェクトを敷き詰めているとか、よほどのことがない限りは、影響は出てこないと思います。

ただ、遅い現象には、グラフィックカード 側に問題があることがあります。

画面は停止させていますか?

それと、

>ソルバーをFor文で10000回以上回すマクロで、

なぜ、ソルバー自体をループで、1万回以上も回すのか、実験的にはありえることかもしれませんが、実務的には限界を超えているような気がします。

おそらく、セルでは、数十億以上の回数の入力が行われているはずです。

ソルバーは、もともと、旧式のマクロで、セルを対象にしたものですから、それほど回数を繰り替えすなら、最初からVBAマクロで、変数の中で行ったほうがよいではありませんか?物理的な入力回数と、論理的な代入の回数では、10倍以上のスピードが違うと思います。

確か、ソルバーは、Excel2003 では不具合も存在するということで、MSサイトでは、ソルバーのメーカーから、ソルバーを購入するように勧められていたと思います。
    • good
    • 2

まったくの、当てずっぽうですが、


メモリ512MBだからツライのかも。
せめて、1GBぐらいに拡張することをお勧めします。
あとは、使わない常駐ソフトを切るとか...
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています