HOME > 即効テクニック > AccessVBA > データベース・データ保護 > レコード追加の確認を行う

即効テクニック

データベース・データ保護

レコード追加の確認を行う

(Access 2000/2002/2003)
●概要●
新規レコードに、最初の文字を入力したときに発生します。イベントプロシージャは、BforeInsert/挿入前処理プロパティに設定します。BeforeInsertイベントプロシージャの引数にTureを設定すると、BeforeInsertイベントをキャンセルすることができます。
次のコードは、最初の文字が入力されたときに、新規レコードを追加するかどうかを確認するものです。メッセージダイアログで[いいえ]ボタンがクリックされた場合、イベントをキャンセルします。その結果、新規レコードに入力された文字は、入力を取り消されます。

●サンプル●
'レコード追加の確認を行う
Private Sub Form_BeforeInsert(Cancel As Integer)
    Dim myRes As Integer
   '追加を確認
    myRes = MsgBox("新規レコードを追加しますか", vbYesNo) 
    If myRes = vbNo Then
    'イベントをキャンセル
        Cancel = True
    End If
End Sub

●実行結果●
新規レコードの最初の文字を入力したときに、「新規レコードを追加しますか」というメッセージダイアログが表示されます。「いいえ」をクリックすれば、新規レコードの入力がキャンセルされます。

●ポイント●
新規レコードを追加する場合、次の順番にイベントが発生します。

BeforeInsert → BeforeUpdate → AfterUpdate → AfterInsert

BeforeInsertイベントは、新規レコードに最初の文字を入力したときに発生します。
AfterInsertイベントは、新規レコードが追加された直後に発生します。BeforeUpdateイベントとAfterUpdateイベントについては、次回で紹介します。