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)

Vea también