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.

Ukaz On Error GoTo uporabljamo za odzivanje na napake, ki se pojavijo v makru.

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:\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

Podprite nas!