情報と工夫で何とかやってみる(妥協点を見出す)ブログ

情報と工夫で何とかやってきた備忘録です。同じ悩みを抱えている人がいると思い、情報共有しようと思った次第です(尤も、このブログに辿り着いた時点でもう解決していると思いますが…)

情報と工夫で何とかやってきた備忘録です。同じ悩みを抱えている人がいると思い、情報共有しようと思った次第です。(尤も、このブログに辿り着いた時点では、もう解決されていると思いますが…)

ExcelVBA②(ファイルを開いたら自動でバックアップ)

 昨日紹介したバックアップの作成ですが、「自動で作ってくれないかな?」と思うことがあります。例えば、ファイルを開いて作業を始めようとした時にバックアップファイルを自動で作成しておくとか。そうすれば、何か困ったことが起きたとき、バックアップファイルを開けば、やり直すことができます。ということで以下。ファイルを開くと自動実行してくれる方法が紹介されています。感謝です。
https://www.helpforest.com/excel/emv_sample/ex100002.htm

なお、記述する内容は、昨日のものと同じですが、既に、最初と最後の1行は自動で書かれているので、これを除いた以下になります。

Dim name As String, path As String

name = Left(ActiveWorkbook.name, Len(ActiveWorkbook.name) - 5)
path = ActiveWorkbook.path
ActiveWorkbook.SaveCopyAs _
Filename:=path & "\" & name & Format(Now, "yyyymmddhhMM") & ".xlsm"

 なお、私は問題なく作業が終了したら、日付の入ったバックアップファイルは適宜削除しています。