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

Podprite nas!