Contents

# On Error GoTo ... Resume Statement

發生錯誤時啟動錯誤處理常式，或恢復程式執行。

### Syntax:

    On [Local] Error {GoTo Labelname | GoTo 0 | Resume Next}

### Parameters:

GoTo Labelname：發生錯誤時，讓錯誤處理常式跳換到「Labelname」行處開始執行。

Resume Next：發生錯誤時，程式繼續執行出錯陳述式後面的陳述式。

GoTo 0：在目前程序中停用錯誤處理程式。

本機：「On error」範圍涵蓋全域，除非遭到其他「On error」陳述式取消，否則會保持在使用中。而「On Local error」則適用於本機，僅限於呼叫的常式。本機錯誤處理會覆寫任何先前的全域設定。當呼叫的常式存在時，本機錯誤處理會自動取消，而且會復原所有先前的全域設定。

On Error GoTo 陳述式用來反應出現在巨集內的錯誤。

### Example:

    Sub ExampleReset
    On Error GoTo ErrorHandler
        Dim iNumber As Integer
        Dim iCount As Integer
        Dim sLine As String
        Dim aFile As String
        aFile = "C:\Users\ThisUser\data.txt"
        iNumber = Freefile
        Open aFile For Output As #iNumber
        Print #iNumber, "This is a line of text"
        Close #iNumber
        iNumber = Freefile
        Open aFile For Input As iNumber
        For iCount = 1 To 5
            Line Input #iNumber, sLine
            If sLine <>"" Then
                Rem
            End If
        Next iCount
        Close #iNumber
        Exit Sub
    ErrorHandler:
        Reset
        MsgBox "All files will be closed",  0,  "Error"
    End Sub

相關主題

Error-Handling Functions

Open Statement