Excel 大量の数式を設定したことにより動作が重い場合の対処法(自動計算の停止)

2020年10月14日

シート中に大量の数式が存在する場合、

ファイルを開くときや、値を更新したときExcelがなかなか動作しなく時があります。

複雑な数式は元よりVLOOKUP関数のような検索系の関数は特に動作を重くしがちです。

(大量のデータ範囲の場合も多い)

この記事では、その対処法を紹介します。

手順

何故、Excelの動作が重くなるかというと、何か値を更新すると

ブック全体の数式を再計算してしまうからです。

(値を更新していない数式も全て再計算)

必要な分だけ再計算してくれるのが理想ですが、

その設定はないため計算を自動から手動に変更します。

それにはまず「数式」より「計算方法の設定」を選択し

「自動」から「手動」に切り替えます。

「数式」より「計算方法の設定」を選択し「自動」から「手動」に切り替え

これにより自動計算がされなくなりエクセル全体の動作が軽くなります。

再計算をする場合は数式の中の再計算ボタンをクリックするか

ショートカットキーを押す必要があります。

再計算実行ボタン
ボタン名再計算対象ショートカットキー
再計算実行ブック全体[F9]
シート再計算アクティブシートのみ[Shift]+[F9]

この状態だと数式セルは参照セルの値が変わっても

更新前の間違った結果を表示したままになります。

複数人が同じを開く場合、それを知らないと間違えた結果を

正しいと誤認してしまう恐れがあります。

(ファイルを開くときに再計算はされますが)

事故の元のため多人数が値を更新する場合、

再計算が必要なシートであることを事前に関係者に周知しておくか、

セルの表示固定で常に見える場所に赤字で注意書きを描くことを推奨します。

VLOOKUP関数とXLOOKUP関数

VLOOKUP関数の上位版関数であるXLOOKUP関数では、より高速な検索が行えます。

検索キーを昇順か降順で並べておく必要がありますが

2分探索という高速な検索方法が可能です。

引数の検索モードに2(昇順)か-2(降順)を指定します。

LET関数

2020年9月にOffice365にのみ追加されたLET関数を利用すると

同じ数式の重複を除外し、処理を軽くすることが可能です。

FIND関数VLOOKUP関数XLOOKUP関数などで

同じセル中に全く同じ記述がある場合はLET関数で改善できる可能性があります。

関連記事