Помощ за LibreOffice 25.2
Служи за задаване на подпрограма за обработка на грешки и продължаване на изпълнението на програмата.
On [Local] Error {GoTo Labelname | GoTo 0 | Resume Next}
GoTo Labelname: ако възникне грешка, управлението ще бъде предадено на подпрограмата за обработка на грешки, започваща от ред Labelname.
Resume Next: ако възникне грешка, изпълнението на програмата продължава от реда след оператора, в който е възникнала грешката.
GoTo 0: забранява обработката на грешки в текущата процедура.
Local: незадължителна. Ключовата дума напомня, че операторът е локален за подпрограмата, в която е използван; когато тя завърши, тази обработка на грешки автоматично се отменя.
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, "Това е ред с текст"
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 "Всички файлове ще бъдат затворени", 0, "Грешка"
End Sub