500 MB のピボットテーブルを含む .xls ファイルがありますが、これを .xlsx 形式に変換すると、わずか 5 MB に縮小されます。[データ] > [すべて更新] をクリックしてピボットキャッシュを更新した後でも、ファイル サイズは小さいままです。.xlsm または .xlsb として保存した場合も、同様にサイズが縮小されます。
Microsoft のドキュメントには、XML 形式と ZIP コンテナはバイナリ ドキュメントよりもメモリ効率がはるかに優れていると記載されています。機能は同じままなので、データの損失や破損が発生したと考える理由はないのですが、ファイル サイズがこのように大幅に (90%) 減少した理由として圧縮が妥当でしょうか。ファイル サイズの減少が圧縮によって生じたことを実際にテストする方法はありますか。
ありがとう。
答え1
.xlsx ファイルは、.docx、.pptx など、2007 年以降の Office のすべての類似ファイルと同様に、zip コンテナーです。
拡張子を .zip に変更して、ファイルの内容とフォルダー構造を確認できます (画像付きの PowerPoint ファイルなど、メディアを含むドキュメントの場合はさらに興味深いです)。フォルダーに解凍すると、相対的なサイズを確認できるはずです。
多くのスプレッドシートでは、類似した数式などが頻繁に繰り返されるため、90% の圧縮率が見られてもまったく驚きません。ずっと前 (これらの形式が比較的新しい頃) に、Excel が数式の一部を圧縮してファイル サイズを大幅に節約できる可能性を高める方法についての記事を読んだことを覚えているようです。