エクセルファイルのバックアップをとる方法~毎回の履歴も取れるようにしてみました

 

こんにちは、「今より仕事を楽に回そう」デスクワークラボの吉井良平です。

 

仕事上、めちゃくちゃ重要なエクセルファイルってありますよね。

これまでに膨大な時間をかけてメンテナンスしてきて、すべての仕事の元になっているようなファイルです。

仕事上必要なので、新入社員に使ってもらったらデータがグチャグチャになっていた・・・という例もありますし、使う方もおそるおそるになってしまって、エクセル恐怖症を生んでしまうこともあります。

そういった重要なファイルには、念のためにバックアップを残すような設定にしておけば安心です。

 

一つのバックアップを残すだけでしたら、とても簡単なので、ぜひやってみてくださいね。

前回のバックアップを常に残す設定

 

前回保存したところまでのバックアップを、1回分のみ常に残しておく設定です。

ほとんどの場合は、この設定で大丈夫でしょう。

こんな感じで、バックアップファイルが残っていきます

とても簡単なので、さっそく設定してみましょう。

 

設定方法

 

まずは、いつも使っているエクセルファイルを開いてください。

左上の「ファイル」タブを選択して、「名前を付けて保存」を選択します。

[su_row] [su_column size=”1/2″]
ファイルタブ
[/su_column] [su_column size=”1/2″]
名前をつけて保存
[/su_column] [/su_row]

いつも保存している場所を選んで、「ツール」→「全般オプション」を選んでください。

(ボタンのある場所は、エクセルのバージョンによって少し違うかもしれません)

ツール→全般オプション

全般オプションで、「バックアップファイルを作成する」にチェックを入れて、OKボタンを押します。

バックアップファイルを作成するにチェック

あとは、そのまま保存するだけです。

「上書きしますか?」と聞かれたら、迷わず「はい」を選択しましょう!

あとは保存するだけ

これで、一回分のバックアップをとる設定ができました!

かんたんですよね^^

 

毎回のバックアップをずーっと残しておく設定

 

これはあまりニーズは無いかもしれませんが、作ってみました。

一つのファイルをいろんな人が使う場合、特にエクセルに不慣れな人が使う場合などは、どこかで計算式などがおかしくなってしまうかもしれません。

そんな時には、毎回のバックアップが常に残っておいた方が安心ですね。

こんな感じで、どんどん残っていきます

毎回のバックアップをとっていくのは、エクセルの通常の機能だとできないので、マクロを作ってみました。

以下の手順で設定してみてください。

 

設定方法

 

まずは、履歴を残したいエクセルファイルを、普通通りに開いてください。

「ファイル」タブ → 「名前をつけて保存」までは、先ほどと同じ手順です。

 

マクロを使うので、保存する際に「マクロ有効ブック」を選択して、保存してください。

マクロ有効ブックにして保存

コードを貼り付ける

毎回のバックアップを保存する、マクロのコード(VBAといいます)を貼り付けます。

まず、「Alt」キーと「F11」を同時に押して、ビジュアルベーシックエディターを立ち上げてください。

このような画面が出てきましたよね。

このような画面が出てきます

もし、左側にツリー状のフォルダーが無い場合は、「表示」→「プロジェクトエクスプローラー」で、左側部分を表示させてください。

 

左側の部分で、「ThisWorkbook」をダブルクリックすると、右側にコードが入力できる欄ができます。

ThisWorkbook をダブルクリック

上の図では、「Option Explicit」って最初に入っていますが、これは無くても大丈夫なので、気にしないでくださいね。

 

右側の入力欄に、下記のコードをコピペして貼り付けてください。

Private Sub Workbook_BeforeClose(Cancel As Boolean)

ActiveWorkbook.Save

Dim FName As String
Dim FPath As String
Dim FNameS As String

FName = ActiveWorkbook.Name
FPath = ActiveWorkbook.Path

FNameS = Left(FName, Len(FName) - 5)

ActiveWorkbook.SaveAs Filename:=FPath & "\" & FNameS & "_" & Format(Now, "yymmddhhnn") & ".xlsm"

End Sub

貼り付けたら、こんな状態になっていますよね。

コード貼り付け後

これで、ファイルを閉じると自動的にバックアップが作成されるようになっています!

 

マクロの説明と変更して欲しいこと

 

今回作ったマクロは、Workbook_BeforeCloseということで、「ファイルを閉じる前にこのような操作をしなさい」というものです。

 

バックアップファイルは、元ファイルと同じフォルダーに保存されるような設定になっています。

もし違う場所に保存したい場合は、

FPath = “C:¥Users¥owner¥Documents¥6_June”

のような感じで、ファイルを保存する場所の指定を変更してください。

(上記の例は、ドキュメントの6_Juneというフォルダーに保存する場合です)

 

また、ファイル名はもし頻繁に使う時のために、「年月日時分」という非常に長ったらしい名前でバックアップを取るようにしています。

年月日で充分な場合は、最後の “yymmddhhnn” の部分を “yymmdd” だけにしてくださいね。

yyが年、mmが月、ddが日、hhが時、nnが分です。

 

まとめ

 

今回は、バックアップをとる方法を紹介しました。

エクセルを使う際に、少しでもストレスが無くなった方が、快適に仕事ができます。

ファイルが壊れるなどの不安がある場合は、設定してみてください。

 

ちなみに、マクロの方はWorkbook_Openにすれば面談録や議事録の管理などに使えそうです。(ファイルを開いたら、自動的に一定の名前で保存される)

興味のある方は、トライしてみてください!