Microsoft Access Club >AccessTips >このページ >次頁 < 前項  サイト内検索


閉じるイベントをキャンセルする方法:AccessTips082



フォームを閉じる際、誤作動を防ぐためにユーザーに確認メッセージを表示させる手法は、システム製作者には必須の考え方です。 しかし、下図のようにフォームの閉じるボタンをクリックすると、否応がなしにフォームが閉じられてしまいます。
今回は、フォームの閉じるボタン(×)をクリックしても、フォームを閉じる確認メッセージを表示させる方法をご紹介します。

コマンドボタンを利用してフォームを閉じる一般的な方法

フォームにコマンドボタンを配置し、クリック時イベントに下記のようなプロシージャを記述する方法がよく知られています。

Private Sub cmd_Botton_Click()
    
    Dim strMsg As String
    strMsg = "フォームを閉じてもいいですか?"
    
    If 1 = MsgBox(strMsg, 1, "管理者") Then DoCmd.Close acForm, "frm_sample"
    
    Exit Sub

End Sub

Unloadイベントの利用

フォームイベントである Unloadイベントを用います。

Private Sub Form_Unload(Cancel As Integer)

    Dim strMsg As String
    strMsg = "フォームを閉じてもいいですか?"
    
    If 1 <> MsgBox(strMsg, 1, "管理者") Then Cancel = True

End Sub
動作確認
  1. フォームを閉じるために、右上の閉じるボタン(×)をクリックします。
  2. 以下のメッセージボックが表示されます。
  3. [キャンセル]ボタンをクリックします。
  4. 閉じるアクションがキャンセルされます。

フォームを開く場合は、開くイベント自体がキャンセル可能なイベントですから、引数CancelにTrueを設定するだけでイベントの実行をキャンセルすることができます。

 2003/01/04

ページの先頭へ 前ページへ戻る

 


閉じるイベントをキャンセルする方法:AccessTips082


 

-Microsoft Access Club-