分享方式:


Form.BeforeInsert 事件 (存取)

BeforeInsert 事件發生於使用者在新的記錄] 中輸入第一個字元時,但是真正建立記錄之前。

語法

表達。之前插入 (取消)

expression 代表 Form 物件的變數。

參數

名稱 必要/選用 資料類型 描述
Cancel 必要 整數 這個設定值會決定 BeforeInsert 事件是否會發生。 將 Cancel 引數設定為 True (1) 會取消 BeforeInsert 事件。

註解

注意事項

使用巨集或 Visual Basic 來設定控制項的值不會觸發這些事件。

若要在發生這些事件時執行巨集或事件程序,請將 BeforeInsertAfterInsert 屬性設定為巨集名稱或 [事件程序]。

使用 AfterInsert 事件程序或巨集,在新增記錄時重新查詢記錄集。

BeforeInsertAfterInsert 事件類似於 BeforeUpdateAfterUpdate 事件。 這些事件依下列順序發生:

BeforeInsertBeforeUpdateAfterUpdateAfterInsert

下表總結這些事件之間的互動。

事件 發生時機
BeforeInsert 使用者在新的記錄中輸入第一個字元。
BeforeUpdate 使用者更新記錄。
AfterUpdate 記錄被更新。
AfterInsert 更新的記錄是一筆新記錄。

如果將新記錄中的第一個字元輸入文字方塊或下拉式方塊,則 BeforeInsert 事件會先於 Change 事件發生。

範例

此範例示範如何使用 BeforeInsert 事件程序來驗證使用者是否想要建立新記錄,以及使用 AfterInsert 事件程序在新增記錄之後重新查詢 Employees 表單的記錄來源。

若要嘗試此範例,請將下列事件程式新增至以資料表或查詢為基礎的名為 Employees 的表單。 切換至表單的 [資料工作表檢視] 後嘗試插入一筆記錄。

Private Sub Form_BeforeInsert(Cancel As Integer) 
 If MsgBox("Insert new record here?", _ 
 vbOKCancel) = vbCancel Then 
 Cancel = True 
 End If 
End Sub 
 
Private Sub Form_AfterInsert() 
 Forms!Employees.Requery 
End Sub

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應