スプレッドシートが重いときに効く対処を、効果の大きい順に
セルを1つ書き換えるたびに、画面が一瞬止まる。スクロールがカクつく。保存に何秒もかかる。ファイルサイズはそこまで大きくないはずなのに、重い。原因はだいたい複数重なっていますが、効果の大きさには順番があります。手当たり次第に触るより、効果が大きいものから潰した方が早く軽くなります。仕組みを説明しながら、効果の大きい順に並べます。■ 1位:列全体・行全体を参照する数式をやめる=SUMIFS(C:C,A:A,"東京") のように列全体を指定すると、Excel/スプレッドシートはその列の最終行(100万行超)まで見に行きます。実データが300行しかなくても、残り99万行以上も毎回スキャン対象になります。 これが同じシートに何十個も入っていると、再計算のたびに重い処理が積み重なります。対処は、範囲を実データの行数に絞ることです。=SUMIFS(C2:C1000,A2:A1000,"東京")行が増える予定があるなら、元データをテーブル化(Ctrl+T)しておくと、範囲を都度広げ直さずに済みます。■ 2位:揮発性関数を減らすNOW、TODAY、RAND、RANDBETWEEN、OFFSET、INDIRECTといった関数は「揮発性関数」と呼ばれ、シート内のどこか1セルでも変更があるたびに、無関係な場所にあっても再計算されます。 通常の数式は関係するセルが変わったときだけ再計算されるのに対し、揮発性関数はこのルールの外にあります。これが数十個あると、他のセルを1つ触っただけでシート全体が固まる原因になります。日付や乱数を都度更新する必要がないなら、値として貼り付けてしまうか、更新が必要な範囲だけ
0