Error 事件

此頁(yè)沒有內(nèi)容條目
內(nèi)容

expandtri全部顯示

Error 事件在窗體報(bào)表擁有焦點(diǎn),同時(shí)在 Microsoft Access 中產(chǎn)生了一個(gè)運(yùn)行時(shí)錯(cuò)誤時(shí)發(fā)生。

Private Sub object_Error(DataErr As Integer, Response As Integer)

Object    窗體或報(bào)表的名稱。

DataErr    發(fā)生錯(cuò)誤時(shí)由 Err 對(duì)象返回的錯(cuò)誤代碼??梢栽?Error 函數(shù)中使用 DataErr 參數(shù),將該編號(hào)映射到相映的錯(cuò)誤消息。

Response    該設(shè)置確定是否顯示錯(cuò)誤消息。Response 參數(shù)可以是以下固有常量之一。

常量說明

acDataErrContinue 忽略錯(cuò)誤并繼續(xù),不顯示默認(rèn)的 Microsoft Access 錯(cuò)誤消息。您可以提供自定義錯(cuò)誤消息來替代默認(rèn)的錯(cuò)誤消息。

acDataErrDisplay(默認(rèn)值)顯示默認(rèn)的 Microsoft Access 錯(cuò)誤消息。

說明

這包括 Microsoft Jet 數(shù)據(jù)庫(kù)引擎錯(cuò)誤,但不包括 Visual Basic 中的運(yùn)行時(shí)錯(cuò)誤或來自 ADO 的錯(cuò)誤。

如果要在此事件發(fā)生時(shí)執(zhí)行一個(gè)事件過程,請(qǐng)將 OnError 屬性設(shè)置為宏的名稱或 [事件過程]。

在 Error 事件發(fā)生時(shí),通過執(zhí)行事件過程或宏,可以截取 Microsoft Access 錯(cuò)誤消息而顯示自定義消息,這樣可以根據(jù)應(yīng)用程序傳遞更為具體的信息。

示例

下面的示例指出了如何用自定義錯(cuò)誤消息替代默認(rèn)的錯(cuò)誤消息。當(dāng) Microsoft Access 返回錯(cuò)誤消息,指出它已找到重復(fù)鍵(錯(cuò)誤代碼 3022)時(shí),此事件過程會(huì)顯示一條消息,向用戶提供更具體的特定于應(yīng)用程序的信息。

若要試用該示例,請(qǐng)將下面的事件過程添加到基于表(該表將唯一的雇員 ID 編號(hào)作為每條記錄的鍵)的窗體中。

Private Sub Form_Error(DataErr As Integer, Response As Integer)

    Const conDuplicateKey = 3022

    Dim strMsg As String

    If DataErr = conDuplicateKey Then

        Response = acDataErrContinue

        strMsg = "Each employee record must have a unique " _

            & "employee ID number. Please recheck your data."

        MsgBox strMsg

    End If

End Sub