Pomoc LibreOffice 24.8
Umożliwia obsługę błędów lub wznowienie wykonywania programu.
On [Local] Error {GoTo Labelname | GoTo 0 | Resume Next}
GoTo nazwa_etykiety: W przypadku wystąpienia błędu umożliwia jego obsługę rozpoczynającą się od linii "nazwa_etykiety".
Resume Next: W przypadku wystąpienia błędu wykonywanie programu jest wznowione od instrukcji umieszczonej bezpośrednio za instrukcją, przy której wystąpił błąd.
GoTo 0: Wyłącza obsługę błędów w bieżącej procedurze.
Local: Instrukcja "On error" ma globalny zasięg i pozostaje aktywna do momentu jej anulowania przez inną instrukcję "On error". Instrukcja "On Local error" ma charakter lokalny w odniesieniu do procedury, która ją wywołuje. Lokalna obsługa błędów zastępuje wszelkie poprzednie ustawienia globalne. Jeśli istnieje procedura wywołująca, lokalna obsługa błędów zostaje automatycznie anulowana i przywracane są poprzednie ustawienia lokalne.
Wyrażenie On Error GoTo jest używane aby określić reakcję na błedy, które wystąpią w makrze.
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 #iNumber, "To jest linia tekstu"
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 "Wszystkie pliki zostaną zamknięte", 0, "Error"
End Sub