「ほらごらん はるか彼方に 最後のセル」

 小さな表がポツンとあるだけなのに、ファイルサイズが2メガバイト。Excelでは時折、摩訶不思議なファイル肥大化現象に出くわすことがある(図51)。

図51 表をあれこれいじっていると、ファイルサイズが予想外に大きくなることがある。巨大な表から不要部分をカットして小さくしたときは要注意
[画像のクリックで拡大表示]

 疑問を解くカギは、「最後のセル」にある。Excelはシートを保存するときに、全部のセルの情報を記録するわけではない。使用しているセル範囲の情報だけを保存して、ファイルサイズを抑えているのだ。使用領域の先頭は常にA1セルだが、末尾は実際に使われた「最後のセル」に応じて変わる。

 最後のセルを調べるには、「ジャンプ」機能の「セル選択」で「最後のセル」を選べばいい(図52)。ここでは、5万行目が最後だった(図53左)。表が小さいにもかかわらず使用中と見なされた範囲が巨大だったのが、肥大化の原因だ。

【最後のセルを見つけて行全体を削除する】
図52 「編集」メニューから「ジャンプ」を選び、「セル選択」をクリック(2007では「ホーム」→「検索と選択」→「条件を選択してジャンプ」)。「最後のセル」をチェックして「OK」をクリックする
[画像のクリックで拡大表示]

 ユーザーとしては表の末尾まで保存してくれればいい。そこで、表の下から5万行目までを選択し、行単位で削除する(図53右)。これで最後のセルが、表の末尾のセルに修正される。上書き保存すれば、ファイルサイズも適正になる。

図53 5万行目が最後だとわかった(上)。行見出しをドラグして5万行目まで行全体を選択し、右クリックして「削除」を選ぶ。「編集」→「クリア」→「すべて」でもよい
[画像のクリックで拡大表示]

 ところで、「最後のセル」がはるか遠くにあったのはなぜか。考えられるのは、以前に5万行目までデータが入っていたこと(図54)。データを削除した後も、表示形式などの書式情報が残ることがある。その場合、見た目はまっさらでも使用中の扱いになる。

【こんな操作でファイルサイズが巨大になる】
図54 「2/14」と入力すると、自動的に書式が「標準」から「m月d日」の日付形式になる。これを約5万行分コピーした後、「Delete」キーで削除すると、見た目は真っ白だが、セルには日付形式の書式情報が残ったまま。約5万行分の書式情報を抱えることになる
[画像のクリックで拡大表示]

出典:日経PC21 2010年5月号
記事は執筆時の情報に基づいており、現在では異なる場合があります。