Інструкція On Error GoTo ... Resume

Вмикає процедуру обробки помилок після появи помилки або відновлює виконання програми.

Синтаксис:

On Error Statement diagram


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

Параметри:

GoTo Labelname: Якщо виникає помилка, включається процедура обробки помилок, яка починається з рядка "Labelname".

Resume Next: якщо виникає помилка, то виконання програми продовжується з інструкції, що слідує за інструкцією, в якій ця помилка виникла.

GoTo 0: вимикає обробник помилок у поточній процедурі.

Local: "On error" по контексту є глобальним і залишається активним до скасування іншим оператором "On error". "On Local error" є локальним для програми, що викликала цей елемент. Локальна обробка помилок замінює всі раніше встановлені глобальні параметри. При завершенні роботи викликаючої програми локальна обробка помилок вимикається автоматично, а встановлені раніше глобальні параметри відновлюються.

Інструкція On Error GoTo використовується для реагування на помилки виникають в макросі.

Приклад:


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 "All files will be closed",  0,  "Error"
End Sub

Будь ласка, підтримайте нас!