On Error GoTo ... Resume Statement

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

Syntax:

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