使用 Access 中的 OnError 巨集指令來指定當巨集中發生錯誤時應採取的動作。
注意
OnError 巨集指令無法在 Access Web 應用程式中使用。
設定
OnError 巨集指令具有下列引數。
| 巨集指令引數 | 描述 |
|---|---|
| 前往 | 指定發生錯誤時應該發生的一般行為。 按一下下拉式箭頭,然後按一下以下其中一個設定: 接下來: 存取會將錯誤細節記錄在 巨集 錯誤物件中,但不會停止巨集。 巨集會繼續執行下一個巨集指令。 巨集名稱: Access 會停止目前的巨集,並執行巨 集名稱 參數中命名的巨集。 失敗: 存取會停止目前的巨集並顯示錯誤訊息。 |
| 巨集名稱 | 如果 [移至] 引數設定為 [巨集名稱],請輸入要用於錯誤處理的子巨集名稱。 您輸入的名稱必須與目前巨集中的子巨集名稱相符;您無法輸入不同巨集物件的名稱。 在下列範例中,ErrorHandler 子巨集包含在與 OnError 巨集指令相同的巨集物件中。 如果 [移至] 引數設為 [下一個] 或 [失敗],則此引數必須保留空白。 |
註解
- OnError 巨集指令通常會放在巨集的開頭,但您也可以將其放在巨集中的稍後。 巨集指令所建立的規則將在巨集指令執行時生效。
- 如果您將 [移至] 引數設為 [失敗],Access 的行為會與巨集中沒有任何 OnError 巨集指令時的行為相同。 也就是說,如果發生錯誤,Access 會停止巨集並顯示標準錯誤訊息。 [失敗] 設定的主要用途是用來關閉您先前在巨集中建立的任何錯誤處理。
範例
下列巨集示範使用 OnError 巨集指令。 在此範例中,OnError 指令會指定 Access 在發生錯誤時,執行名為 ErrorHandler 的自訂錯誤處理子巨集。 如果有任何後續指令發生錯誤,Access 便會跳至 ErrorHandler 子巨集。 ErrorHandler 子巨集會顯示一個會參照 MacroError 物件以顯示錯誤相關訊息的訊息方塊。
| 子巨集名稱 | [動作] | 引數 |
|---|---|---|
| OnError |
移至:巨集名稱 巨集名稱:ErrorHandler |
|
| [巨集指令 2] | ||
| ... | ||
| [巨集指令 n] | ||
| ErrorHandler | MessageBox |
訊息: ="錯誤號碼" & [MacroError].[Number] & " 發生於 " & [MacroError].[ActionName] & " 巨集指令。" Beep:Yes Type:None 標題:發生錯誤 |
以下是具有前述範例的 Access 巨集設計工具的螢幕擷取畫面。 在這個情況中,SetLocalVar 指令中的運算式會因為嘗試將數字除以零而觸發錯誤。 Access 會向下移至名為 ErrorHandler 的子巨集,並在訊息方塊中顯示錯誤訊息。