On Error GoTo ... Resume Statement

Aktiverar en felhanteringsrutin efter att ett fel inträffat eller återupptar programkörningen.

Syntax:

On Error Statement diagram


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

Parametrar:

GoTo Labelname: Om ett fel inträffar aktiveras felhanteringsrutinen som startar vid raden "Labelname".

Resume Next: Om ett fel inträffar fortsätter programkörningen med den sats som kommer efter satsen som felet inträffade i.

GoTo 0: Inaktiverar felhanteraren i den aktuella proceduren.

Lokal: "On error" har ett globalt definitionsområde (scope) och förblir aktivt tills det avbryts av en annan "On error"-sats. "On Local error" är lokalt för den rutin som anropar det. Lokal felhantering åsidosätter alla tidigare globala inställningar. När den anropande rutinen avslutas så avbryts den lokala felhanteringen automatiskt, och alla tidigare globala inställningar återställs.

Deklarationen On Error GoTo används för att hantera fel som inträffar i ett makro.

Exempel:


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 #iNumber, "Det här är en textrad"
    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 "Alla filer stängs",0,"Fel"
End Sub