#011 | レコード削除時のAccessのメッセージを表示させない方法 | VBA | |
Accessでは、テーブルのデータシートビューでもフォームでも、レコードを削除しようとすると図のようなメッセージが表示されます。常に表示させなくてよい場合にはAccessのメニューの[オプション]によって設定することができますが、ここではフォームのレコード編集において、イベントプロシージャを使って表示を抑制する方法、さらに独自のメッセージを表示する方法をご紹介します。 まず、フォームのプロパティウィンドウから[削除前確認]のイベントプロシージャをコードビルダによって作成します。 Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer)
End Sub ここには削除されようとしている状態での処理を記述します。削除していいのかあるいは削除操作を中止するのか、またAccessのメッセージの表示をするかどうかの2つの返値をセットします。 例:そのまま何もメッセージを表示せずに削除する場合
Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer) Response = acDataErrContinue End Sub 例:独自の削除確認メッセージを表示する場合
Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer) Beep If MsgBox("削除しますか?", vbYesNo + vbQuestion) = vbYes Then Response = acDataErrContinue Else Cancel = True End If End Sub 例:常に削除させない場合
すべてのレコードに関して削除を禁止する場合には[削除の許可]プロパティを"いいえ"に設定しますが、さまざまな条件によって削除を許可したり禁止したりする場合にはこのイベントプロシージャを使用します。 Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer) Beep MsgBox "削除できません!" Cancel = True End Sub |
|||
|
Copyright © T'sWare All rights reserved |