Ukaz On Error GoTo ... Resume

Aktivira rutino za obdelavo napake, potem ko je do napake prišlo, ali pa nadaljuje z izvajanjem programa.

Skladnja:

Diagram ukaza On Error


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

Parametri:

GoTo ImeOznake: Če pride do napake, aktivira rutino za ravnanje ob napaki, ki se začne v vrstici »ImeOznake«.

Resume Next: Če pride do napake, se izvajanje programa nadaljuje z ukazom, ki sledi ukazu, v katerem je do napake prišlo.

GoTo 0: Deaktivira obdelovanje napake v trenutni proceduri.

Local: »On error« je globalen v dosegu in ostane aktiven, dokler ga ne prekliče drugi stavek »On error«. »On Local error« je krajeven v funkciji, ki ga prikliče. Krajevna obravnava napak preglasi vse prejšnje globalne nastavitve. Ko je priklicana procedura končana, je krajevna obravnava napak samodejno preklicana in vsakršna prejšnja globalna nastavitev je obnovljena.

Primer:


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 #iStevilka, "To je vrstica z besedilom"
    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 "Vse datoteke bodo zaprte", 0, "Napaka"
End Sub