ブックが閉じる前に処理を実行する : Excel VBA
ブックが閉じる前に処理を実行するイベントは、BeforeCloseです。
イベント構文 : Workbook_BeforeClose(Cancel As Boolean)
ここでは、ブックを閉じようとするとメッセージを表示するようにしました。保存済みと未変更か未保存の場合では異なるメッセージを表示させ、未保存の場合は保存することもできます。
未保存の判定は「Me.Saved」で行い、「Me.Save」で保存できます。
Homeに戻る >
Excel ブックのTipsへ
Excel実行画面
未変更か保存済みの場合、ブックを閉じようとすると「ブックを閉じますか?」とメッセージが表示されます。「はい」を選択すると閉じます、それ以外では閉じません。
変更し未保存の場合、ブックを閉じようとすると「ブックを保存して、閉じますか?」とメッセージが表示されます。「はい」を選択すると保存し閉じます、「いいえ」を選択すると保存せずに閉じます、「キャンセル」を選択すると閉じません。
ThisWorkbookオブジェクトのWorkbook_BeforeCloseイベント内に、処理コードを入力します。
Excel VBAコード
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim ret As Long
If Me.Saved Then
ret = MsgBox("ブックを閉じますか?", vbYesNoCancel)
If ret <> vbYes Then
Cancel = True
End If
Else
ret = MsgBox("ブックを保存して、閉じますか?", vbYesNoCancel)
If ret = vbYes Then
Me.Save
ElseIf ret = vbNo Then
ThisWorkbook.Saved = True
ElseIf ret = vbCancel Then
Cancel = True
End If
End If
End Sub
Homeに戻る >
Excel ブックのTipsへ
■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します
Copyright (c) Excel-Excel ! All rights reserved