プロが教えるわが家の防犯対策術!

エクセルデータを閉じる時に元データとは違う場所にバックアップをとるように以下のようなコードを記述しました。(Excel内の一部のデータが何かしらのタイミングで消えてしまう現象が起き、どのタイミングで消えているのかを探るために誰かしらがデータを開いて閉じる時にその閉じた時間をファイル名にして保存させるというのが目的です)

Sub Auto_Close()
Worksheets("Sheet1").Select 'シート1を開く
ThisWorkbook.Save '元データの保存場所に上書き保存
Filename = Format(Now(), "yyyy-mm-dd-hh-mm-ss")
ThisWorkbook.SaveAs Filename:="\\●●\●●\●●\●●\●●\" & Filename & ".xlsm" '別の場所に名前をつけて保存
End Sub

この別の場所に保存したデータ((1)とします)を開いて中身を確認してから閉じるともちろん再度閉じた時間をファイル名にして保存する((2))ことになるのですが、このとき上書きされるような形になってしまい(1)のデータが残りません。(1)が残るようにするにはどこを修正すればいいのでしょうか?

A 回答 (1件)

コードの中でわざわざ上書き保存していますからねぇ。


↓この1行を削除してみてください。
ThisWorkbook.Save '元データの保存場所に上書き保存
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

確かに名前をつけて保存イコールデータを保存ですよね。

意味不明なことしていました。

お礼日時:2014/10/10 19:27

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!