Instrucción On Error GoTo… Resume
Habilita una rutina de manejo de errores después de producirse éstos o continúa la ejecución del programa.
Sintaxis:
On {[Local] Error GoTo NombreEtiqueta | GoTo 0 | Resume Next}
Parámetros:
GoTo NombreEtiqueta: Si se produce un error, activa la rutina de manejo de errores que empieza en la línea "NombreEtiqueta".
Resume Next: Si se produce un error, la ejecución del programa continúa con la instrucción que sigue a aquélla en la que se produjo el error.
GoTo 0: Desactiva el manipulador de errores en el procedimiento actual.
Local: El ámbito de "On error" es global, y permanece activo hasta que se cancela mediante otra sentencia "On error". En cambio, el ámbito de "On Local error" es local para la rutina que lo invoca. El manejo local de errores anula cualquier configuración global previa. Cuando finaliza la rutina invocadora, se cancela automáticamente el manejo local del error, y se restaura la configuración global previa.
La instrucción On Error GoTo se utiliza para reaccionar a los errores que se producen en una macro.
Ejemplo:
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, "Este es un renglón de texto"
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 "Todos los archivos se cerrarán",0,"Error"
End Sub