再計算でエクセルが止まるとき短くする対処法!重くする関数、マクロを対処

再計算でエクセルが止まってしまうときの、対処法を紹介しています。再計算は、関数やマクロが入力されているファイルで発生します。再計算が遅い! 再計算に長く時間がかかり次の作業ができない、エクセルがフリーズしてしまい、保存できずにプロセスを終了してしまったということはないでしょうか。すぐ終わる作業に、再計算が発生すると、大変な時間がかかってしまい、時間の無駄になります。再計算は短くしたいです。ここでは、エクセルの再計算をできるだけ早く終わらせるて、短くする方法を説明しています。例えば、再計算を自動と手動を切り替えたりしています。

 

 

再計算を短くする方法

再計算に長くかかる関数を多く使わない

再計算に時間がかかる関数を沢山使っていると、それだけエクセルが長く止まってしまいます。できるだけ再計算に時間がかからない関数で代用しましょう。

ですが、他の関数で代用できない場合もあります。そのような時が多いのではないでしょうか。このような場合、最初数式で計算し、この数式を値に変えると再計算されません。

1.数式が入力されている範囲を選択します。

2.そのまま選択した範囲をコピーします。

3.右クリックで「形式を選択して貼り付け」→「値」を選択し「OK」をクリックします。

数式を値に変えることによって、再計算がされません。数式を沢山使っていたり、数式が複雑だとその違いをより実感できます。

 

 

再計算を自動から手動にする

エクセルでの再計算は、自動に設定されています。自動再計算に設定されていると、必要ない場合でも再計算が発生してしまいます。一度発生すると厄介です。

そのままエクセルが、フリーズしてしまった経験はないでしょうか。このような場合、再計算を手動にすると再計算をしたい時だけ計算を実行できます。再計算の途中で手動に切り替えると、再計算を停止できます。

再計算を短くする、最も簡単で手短な方法です。

①「数式」タブ→「計算方法」グループ→「計算方法の設定」▼から「手動(M)」にレ点を入れます。

 

②「ファイル」タブ→「オプション」→「数式」→「計算方法の設定」→「手動(M)」にチェックマークを入れます。

 

 

数式の計算に使用するプロセッサの数を変更する

エクセル2013、2016では再計算に使用する、プロセッサの数を設定することで、再計算にかかる時間を短縮または制御することができます。

1.「ファイル」タブ→「オプション」→「詳細設定」→「数式」→ 「マルチスレッド計算を行う(U)」 チェック ボックスをオフにします。

 

2.必要に応じて、「マルチスレッド計算を行う(U)」 チェック ボックスをオンにした場合は、コンピューターの使用するプロセッサの数を制御できます。

プロセッサの数を制御するには、「計算スレッドの数」 で 「使用するプロセッサの数を指定する」で使用するプロセッサの数を入力します。最大数は 1024です。

 

3.「ファイル」タブ→「オプション」→「詳細設定」→「全般 」→ 「マルチスレッド処理を有効にする(P)」 チェック ボックスをオフにします。

 

4.「OK」をクリックして「Excelのオプション」を閉じます。

 

 

VBAを高速化する方法

画面描画を停止、イベントを抑制するとVBAの実行が早くなります。

・画面描画を停止する

Application.ScreenUpdating = False

・イベントを抑制する

Application.EnableEvents = False

・Withで設定すると次のようになります。

・設定を解除する

Application.ScreenUpdating = True

Application.EnableEvents = True

再計算はどのような時発生する

数式の結果に影響を及ぼす変更が、ブック内のデータ行われると、数式が含まれている列全体の再計算が発生します。

数式の定義が変更されたり、計算列が追加、行が挿入されたり削除された時も再計算がされます。数式内で参照されているテーブルや、列の名前が変更された場合でも再計算が発生します。

再計算には、自動再計算と手動再計算があります。エクセルでは自動再計算が設定されていますが、目的によって再計算を自動、手動に切り替えることができます。

再計算に時間が長くかかる原因

再計算に時間がかかる時と、一瞬で終わってしまう場合があります。どのような場合再計算に時間がかかってしうのでしょうか。

再計算に時間がかかる関数を多く使っている

VLOOKUP関数、SUMIF関数、MATCH関数、 COUNTIF関数など、再計算に時間がかかってしまう関数は決まっています。このような関数を多く使ってしまうと、再計算に長く時間がかかってしまいます。

できるだけ、このような関数は使わない、数式を値に変更したりして、再計算を短くしましょう。

揮発性関数を使っている

エクセルは、再計算のたびに、揮発性関数が含まれているセルを再評価します。揮発性関数を多く使っていると、再計算に時間が長くかかる可能性があります。

エクセルのデータ量が大きいと再計算も長くなります。

ある程度ファイルのサイズが大きくなると、再計算も長くなります。できるだけファイルのサイズは大きくならないようにしましょう。

データ量が多くなったらファイルを2つに分割することも考えたほうがいいです。必要でないデータはこまめにに削除することもしましょう。

ファイルの形式によってもサイズは違ってきます。ファイルの形式は古い形式よりも最新の形式のほうが、ファイルのサイズが小さくなります。

面倒に思えるかもしれませんが、エクセルの再計算を手動に変えて、必要な場合だけ再計算を実行させることも試してみましょう。

こちらの記事もご覧ください。⇒エクセルが重いとき、その原因と軽くする対処法