Resume ステートメント
更新 : 2007 年 11 月
エラー処理ルーチンが終了した後で実行を再開します。
Resume [ Next | line ]
指定項目
Resume
必ず指定します。エラー ハンドラと同じプロシージャでエラーが発生した場合は、エラーの原因となったステートメントから実行が再開されます。呼び出されたプロシージャでエラーが発生した場合は、エラー処理ルーチンを含むプロシージャから最後に呼び出されたステートメントから実行が再開されます。Next
省略可能です。エラー ハンドラと同じプロシージャでエラーが発生した場合は、エラーの原因となったステートメントの直後のステートメントから実行が再開されます。呼び出されたプロシージャでエラーが発生した場合は、エラー処理ルーチン (または On Error Resume Next ステートメント) を含むプロシージャから最後に呼び出されたステートメントの直後のステートメントから実行が再開されます。line
省略可能です。必須の line 引数で指定した行から実行が再開されます。引数 line は行ラベルまたは行番号で、エラー ハンドラと同じプロシージャに含まれる必要があります。
解説
エラー処理ルーチン以外で Resume ステートメントを使用すると、エラーが発生します。
Try...Catch...Finally ステートメントを含むプロシージャ内では、Resume ステートメントは使用できません。
使用例
この例では、Resume ステートメントを使用して、プロシージャ内のエラー処理を終了させ、エラーが発生したステートメントの実行を再開します。Resume ステートメントの用途を示すために、エラー番号 55 を生成します。
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
必要条件
名前空間 : Microsoft.VisualBasic
アセンブリ : Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll 内)