Resume (Instrucción)
Reanuda la ejecución una vez finalizada una rutina de control de errores.
Se recomienda usar el control estructurado de excepciones en el código siempre que sea posible, en lugar de usar el control de excepciones no estructurado y las instrucciones On Error
y Resume
. Para obtener más información, vea Instrucción Try...Catch...Finally (Visual Basic).
Sintaxis
Resume [ Next | line ]
Partes
Resume
Necesario. Si el error se produjo en el mismo procedimiento que el controlador de errores, la ejecución se reanuda con la instrucción que provocó el error. Si el error se produjo en un procedimiento llamado, la ejecución se reanuda en la instrucción que llamó por última vez al procedimiento que contiene la rutina de control de errores.
Next
Opcional. Si el error se produjo en el mismo procedimiento que el controlador de errores, la ejecución se reanuda con la instrucción que sigue inmediatamente a la instrucción que provocó el error. Si el error se produjo en un procedimiento llamado, la ejecución se reanuda en la instrucción que sigue inmediatamente a la instrucción que llamó por última vez al procedimiento que contiene la rutina de control de errores (o instrucción On Error Resume Next
).
line
Opcional. La ejecución se reanuda en la línea especificada en el argumento line
obligatorio. El argumento line
es una etiqueta de línea o un número de línea y debe estar en el mismo procedimiento que el controlador de errores.
Comentarios
Nota
Se recomienda usar el control estructurado de excepciones en el código siempre que sea posible, en lugar de usar el control de excepciones no estructurado y las instrucciones On Error
y Resume
. Para obtener más información, vea Instrucción Try...Catch...Finally (Visual Basic).
Si usa una instrucción Resume
en cualquier lugar que no sea en una rutina de control de errores, se produce un error.
La instrucción Resume
no se puede usar en ningún procedimiento que contenga una instrucción Try...Catch...Finally
.
Ejemplo
En este ejemplo se usa la instrucción Resume
para finalizar el control de errores en un procedimiento y, posteriormente, reanudar la ejecución con la instrucción que provocó el error. Se genera el número de error 55 para ilustrar el uso de la instrucción Resume
.
Sub ResumeStatementDemo()
On Error GoTo ErrorHandler ' Enable error-handling routine.
Dim x As Integer = 32
Dim y As Integer = 0
Dim z As Integer
z = x / y ' Creates a divide by zero error
Exit Sub ' Exit Sub to avoid error handler.
ErrorHandler: ' Error-handling routine.
Select Case Err.Number ' Evaluate error number.
Case 6 ' "Divide by zero" error.
y = 1 ' Sets the value of y to 1 and tries the calculation again.
Case Else
' Handle other situations here....
End Select
Resume ' Resume execution at same line
' that caused the error.
End Sub
Requisitos
Espacio de nombres: Microsoft.VisualBasic
Ensamblado: Biblioteca en tiempo de ejecución de Visual Basic (en Microsoft.VisualBasic.dll)