効率アップ

エクセルを軽く! ブックからバイナリに変更 or マクロで消す

 

エクセルは使っていると重くなったり、そもそも重かったり、人からもらったエクセルに手を加えようとしたら、書式がいっぱいでこれ以上追加できません、となった経験はありませんか?

そんなときに使えるTIPをご紹介します。



不要なシート、図やオブジェクトを削除する

まずはカンタンにできることから。

使ってないシートや、オブジェクト、図などがあったら削除しましょう。

Ctrl + Gでジャンプを開く

セル選択をクリック

オブジェクトを選択してOK。

とすべての図形が全選択された状態になるので、「DELETE」しちゃいましょう。

 

重いファイルは拡張子をバイナリに変える

エクセルの書式は

  • .xls
  • .xlsx

のどちらかではないでしょうか。

この「xls」や「xlsx」を拡張子といいます。

拡張子が見えないよ~ってときはまず、こちらを試してください。

エクセルで拡張子を表示させる

エクセルで拡張子を表示させる→すべてのファイルの拡張子を表示させることになります。

標準では、「非表示」になっているかと思われます。これは、間違って拡張子を変えてしまうことを防ぐためです。

まず、

  1. ウインドウズキー + E 」をクリック、もしくは
  2. デスクトップ上のPCアイコンをクリック

するとエクスプローラーが表示されます。

 

表示タブ→ファイル名拡張子にチェックを入れます。

そうすると、すべてのファイルの拡張子が表示されます(*´∀`*)

 

ここまでで準備ができたと思うので、本題のバイナリに進みますね。

エクセルの拡張子をバイナリに変える

バイナリとは2進法で、バイナリブックとは0と1で書かれていて、ブック(xls、xlsx)よりもファイルが軽くなります。

10Kを超えるファイルはバイナリ形式のほうが動作が軽くなります。

こちらのexcel 01ファイルをバイナリに変えてみましょう!

まず、

  • クリックしてエクセルを開きます。
  • F12キーをクリックして、「名前をつけて保存」ダイアログを出します。

 

そうするとどの形式で保存するかを聞かれるので、ここで「バイナリブック」を選びましょう!

保存して、ファイルの重さを見てみましょう。

ちょっと軽くなりましたね!

 

エクセルが重いと作業がはかどらないので、是非試してみてくださいね。

 

エクセル拡張子のまとめ

エクセルの拡張子で主なもの

.xls Excel2003までのブック形式
.xlsx Excel2007からのブック形式
.xlsb バイナリ形式
.xlsm マクロが保存されている

 

スタイルのユーザ設定をマクロで削除する

同じファイルの使い回し・・・そういったファイルってすっごく重いですよね。この、スタイルのユーザ設定が何をしたつもりがなくても、増殖していき、しまいには「追加できません」というメッセージが出たりします。

急いでいるときに限って、早く終わらせて!との指示があったり。

ひとつひとつ削除するにもちまちますぎて、減らないスタイル。

こういうときは、マクロで消してしまいましょう(*´∀`*)

  1. エクセルのタブあたりを右クリックして「コードの表示」を選ぶ
  2. VBAにコードをペースト
  3. F5 もしくは実行を押す

 

コピペしたら、F5キーのほうが楽ですよ~

そして待つと、いくつ削除したか、出力されます。

今回は試しにしたファイルなので少ないですが、多いときは3万以上にもなります。

コードはそのままでもいいのですが、軽くするため、消しましょう。

コードはSub~からEnd subまでをコピペしてくださいね。

 

Sub delete_style()

    On Error Resume Next

    Dim style As Object

    Dim count As Integer

    count = 0

    For i = ActiveWorkbook.Styles.count To 1 Step -1

        Set style = ActiveWorkbook.Styles.Item(i)

        ‘標準以外のスタイルを削除

        If Not style.Name = “Normal” Then

            style.Delete

            count = count + 1

        End If

    Next

    On Error GoTo 0

    MsgBox count & “個のスタイルを削除しました。”

End Sub