On Error GoTo ... Resume Statement

였λ₯˜κ°€ λ°œμƒν•œ ν›„ 였λ₯˜ 처리 루틴을 ν™œμ„±ν™”ν•˜κ±°λ‚˜ ν”„λ‘œκ·Έλž¨ 싀행을 λ‹€μ‹œ μ‹œμž‘ν•©λ‹ˆλ‹€.

Syntax:

On Error Statement diagram


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

Parameters:

GoTo Labelname: 였λ₯˜κ°€ λ°œμƒν•  경우 "Labelname" μ€„μ—μ„œ μ‹œμž‘ν•˜λŠ” 였λ₯˜ 처리 루틴을 ν™œμ„±ν™”ν•©λ‹ˆλ‹€.

Resume Next: 였λ₯˜κ°€ λ°œμƒν•  경우 였λ₯˜κ°€ λ°œμƒν•œ 문의 λ‹€μŒ λ¬Έμ—μ„œ ν”„λ‘œκ·Έλž¨ 싀행을 κ³„μ†ν•©λ‹ˆλ‹€.

GoTo 0: ν˜„μž¬ ν”„λ‘œμ‹œμ €μ˜ 였λ₯˜ 처리기λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

Local: Optional. The keyword is a reminder the statement is local to the routine which invokes it; when the routine exits, this error handling is canceled automatically.

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

Please support us!