【Excel】ファイルが重い!原因は「見えないゴミ」!?

これらの症状にお困りの方、もしかすると「見えないオブジェクト」が原因かもしれません。

  • ファイルを開くのに数十秒かかる
  • スクロールやシート切り替えがカクカクする
  • 関数が多いわけでもないのに重い
目次

見えないオブジェクトとは?

Excelが重くなる原因の一つに、目に見えないオブジェクトの蓄積があります。

オブジェクトとは、図形・画像・テキストボックス・グラフ・SmartArtなど、セル以外に挿入できるすべての要素のことです。

シートの複製や他のブックからのコピー&ペーストを繰り返すと、知らず知らずのうちに透明な図形やコメント、テキストボックスなどの残骸がシート上に増えていきます。

表面上は何も見えないため気づきにくいのですが、こうした「見えないゴミ」が数百、場合によっては数千単位で存在していることもあります。

この大量のオブジェクトが、Excelの動作を重くする原因になっているのです。

原因の特定方法

私自身、Excelファイルが重くて困っていた際、以下の方法で原因を特定しました。
透明なオブジェクトが原因かどうかを確認したい場合の一例として参考にしてください。

必ずファイルをコピーして、バックアップをとってから行ってください。

STEP
Excelファイルの拡張子を .xlsx から .zip に変更

対象のExcelファイルの拡張子を .xlsx から .zip に変更します。
「拡張子を変更すると、ファイルが使えなくなる可能性があります」という警告がでますが、「はい」をクリックします。

※拡張子が表示されていない場合は、表示タブ > 表示 > ファイル名拡張子にチェックをいれます。

STEP
zipファイルを開く

拡張子を変更したファイルをダブルクリックして開きます。
中身がフォルダ構造として確認できる状態になります。

STEP
xlフォルダ > worksheetsフォルダを確認

xl フォルダの中にある worksheets フォルダを開きます。
私が確認していたExcelでは50KB程度しかなく、シート自体が重さの原因ではないことが確認できました。

STEP
xlフォルダ > drawingsフォルダを確認

xl フォルダの中にある drawingsフォルダを開きます。
このExcelではオブジェクトを使っていないのですが、大量に存在していることが確認できました。
表面上は見えないオブジェクトですが、ここに膨大なデータが溜まっていることが、ファイルの動作を重くしている可能性が高いと判断しました。

対処方法

手動で削除する方法

STEP
ジャンプ機能を使用

Excelを開き、F5キー > オブジェクト を選択します。
これでシート上のすべてのオブジェクトが選択されます。

STEP
削除

選択されたオブジェクトをDeleteキーで削除します。

マクロを使用する方法

以下のVBAコードを使うと、すべてのシートからグラフ以外のオブジェクトを一括で削除できます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次