このマクロは、アクティブブックに変更があったときだけ、ブックの上書きをします。
Savedプロパティを使うと、ブックの変更の有無を確認することができます。
Savedプロパティは、変更されているときにはFalseを、変更されていないときにはTrueを返します。
ブックに変更があったときだけ上書き保存するマクロ
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル3160() If ActiveWorkbook.Saved = False Then MsgBox "ブックの変更を保存します。" ActiveWorkbook.Save Else MsgBox "ブックは変更されていません。" End If End Sub
●マクロの実行結果
ブックが変更されていないとき
●マクロの実行結果
ブックが変更されているとき
Saved = False
ブックに変更があるとき
Savedプロパティについて
Saved = False
Savedプロパティ=Falseの時は「保存しますか?」が表示されます。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル3165() ActiveWorkbook.Saved = False ActiveWorkbook.Close End Sub
●マクロの実行結果
ブックを閉じるときに、確認画面がでます。
Saved = True
Savedプロパティ=Trueの時は「保存しますか?」が表示されません。
サンプルコード
コード内、Wクリックでコピーできます。
Sub サンプル3170() ActiveWorkbook.Saved = True ActiveWorkbook.Close End Sub
Saved = True
Savedプロパティ=Trueの時は「保存しますか?」が表示されません。
例えば、Book1を次のように変更します。
●マクロの実行結果
「保存しますか?」が表示されないで、画面が閉じます。
このとき、Book1の変更は保存されていません。
以上で「ブックに変更があったときだけ上書き保存するマクロ」の説明を終わります。