• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:特定のシートだけ再計算させない)

特定のシートだけ再計算させない方法は?

このQ&Aのポイント
  • 特定のシートだけ再計算させない方法を知りたいです。現在、sheet2をsheet3の数式で参照しており、データ量が多いため再計算に時間がかかります。
  • オプション設定ではすべてのシートが対象になってしまうため、sheet2の計算だけを行いたいです。
  • 再計算させたいシートモジュールには、Worksheet_Activate()内でActiveSheet.EnableCalculation = Falseと記述しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

EnableCalculationを設定する時に、計算したくないシートをきちんと指定して設定しないとうまくいきません。 例えば、sheet3だけを再計算しないのなら(他はデフォルトで計算しているのでそのまま) Sub test()  Sheets("Sheet3")..EnableCalculation = False End Sub を実行しておけばOKです。 一度実行しておけばよいので、Worksheet_Activateで毎回設定する必要はありません。 もし、自動で設定するならWorkBook_Openイベントなどでも良いですが、そうするといつも計算が反映されなくなるので、計算を反映したい時には、Trueに設定し直す必要があることをお忘れなく。 ボタンにマクロを登録しておいて、再計算と非計算を切替えるのが良いのではないでしょうか?

mimoule1998
質問者

お礼

fujillinさん、ご回答ありがとうございます。 いろいろな人が使用するので、WorkBook_Openイベントに 設定し、Worksheet_Activateで設定して問題なく動作 出来ました。 ありがとうございました。

関連するQ&A