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

エクセルVBAで、表計算上の式がVBA実行中に出てきた結果を用いて再計算しようとするのでメモリが表計算に占領されてしまいます。なのでとても実行完了までに時間がかかります(フリーズしたように遅いです)。
できれば表計算の式が、VBA実行時に再計算されないようにしたいのですがどうすればよいでしょうか?

PS:表計算上の式は、沢山ありいずれはVBAに組み込みたいと考えてはいますが、現時点ではそれはできないのでなんとか今の状態を残したままスムーズに実行できるようにしたいと考えております。宜しくお願い致します。

A 回答 (3件)

お邪魔します。


私も#1さんに賛成です!(って、そーゆー問題じゃないか...)

#1さんの回答に補足です。

メニュー「ツール」-「オプション」の「計算方法」タブで
「手動」と「保存前に再計算」)にチェックです。

上の操作をVBAの中で実行するには以下のコードを参考、
VBAヘルプで調べてみてください。
Application.Calculation = xlCalculationManual
Application.CalculateBeforeSave = True
Calculate
    • good
    • 0

ScreenUpdating=falseが効果的



参考URL:http://www.officetanaka.net/excel/vba/speed/inde …
    • good
    • 0

解釈が違っていたらごめんなさい。



表計算上の式ってセルに埋込んだ関数とか式の
事ですね。VBAの計算中に再計算すると殆ど
無限ループに近くなるって事でしょうか?

「計算を手動にする」に設定ではF9などで
再計算を指定するまでそのままなのですが
※これはオプションで設定できます。

そういう事ではないのでしょうか?
(自信なし)
    • good
    • 0

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