BeforeSaveでは、ブックを保存する処理を実行すると保存前に指定の処理を走らせることができます。上書き保存、名前を付けて保存どちらも動作します。
イベントプロシージャの作成
イベントプロシージャを用意する前段階のモジュールの選択についてはこちら。

Workbookを選んでからBeforeSaveを選択します。

プロシージャが作成されるので、この中に処理を記述します。
BeforeSaveの使い方
' vba
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
MsgBox ("セーブします")
End Sub
とりあえず保存前にメッセージボックスを表示するようにしてみましたが、

コードを適用するために上書き保存した段階でもう動作しました。

普通に上書き保存した時も動作しますし、

名前を付けて保存する時も動作します。保存場所を選んだ時点でBeforeSaveが動き、

それからファイルに名前を付ける、という順序になるようです。

やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ

関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。
コメント