●概要●
新規レコードに、最初の文字を入力したときに発生します。イベントプロシージャは、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イベントについては、次回で紹介します。