'========================================================================================= ' 311 イベントを有効・無効にする '----------------------------------------------------------------------------------------- '【ヒント】 ' このマクロは、おためし機能の動作用のコードを含んでいます。(概ね下半分) ' ★★★の行またはサブプロシージャーが、タイトル機能に関係するコードです。(概ね上半分) ' ThisWorkbookにもコードがあり、連係して動作します。 '========================================================================================= ' ◆標準モジュールのコード◆ '----------------------------------------------------------------------------------------- Option Explicit Dim イベント As Boolean '★★★ Public タイトル As String Public スタイル As Long Public メッセージ As String Public 応答 As Variant '========================================================================================= Private Sub イベントを有効無効にする() '★★★ Application.EnableEvents = イベント End Sub '========================================================================================= '----------------------------------------------------------------------------------------- Sub おためしマクロ() おためしメッセージを表示する If 応答 = vbYes Then '[はい]ボタンがクリックされた場合 イベント = True '★★★ 有効にする Else '[いいえ]ボタンがクリックされた場合 イベント = False '★★★ 無効にする End If イベントを有効無効にする '★★★ ActiveWorkbook.Close '現在開いているブックを閉じる End Sub '----------------------------------------------------------------------------------------- Private Sub おためしメッセージを表示する() Worksheets("Title").Select Range("P1").Select タイトル = "500連発 第2弾 サンプルマクロ" スタイル = 32 + 4 'vbQuestion + vbYesNo メッセージ = "ブックを閉じます。" & Chr(13) & Chr(13) & _ "     イベントを有効にして閉じれば 「閉じてよいか」 聞いてきます。" & Chr(13) & Chr(13) & _ "     無効にして閉じると、無条件で閉じます。" & Chr(13) & Chr(13) & _ "イベントを有効にしますか" 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '----------------------------------------------------------------------------------------- '========================================================================================= ' ◆ThisWorkbookのコード◆ '----------------------------------------------------------------------------------------- Private Sub Workbook_BeforeClose(Cancel As Boolean) メッセージ = "本当に閉じてよいですか" スタイル = 48 'vbExclamation 応答 = MsgBox(メッセージ, スタイル, タイトル) End Sub '=========================================================================================