Throw ステートメント (Visual Basic)Throw Statement (Visual Basic)

プロシージャ内で例外をスローします。Throws an exception within a procedure.

構文Syntax

Throw [ expression ]

要素Part

expression
スローされる例外に関する情報を提供します。Provides information about the exception to be thrown. Catch ステートメント内に存在する場合は省略可能です。それ以外の場合は必須です。Optional when residing in a Catch statement, otherwise required.

コメントRemarks

Throw ステートメントは、構造化例外処理コード (Try...Catch...Finally) または非構造化例外処理コード (On Error GoTo) で処理できる例外をスローします。The Throw statement throws an exception that you can handle with structured exception-handling code (Try...Catch...Finally) or unstructured exception-handling code (On Error GoTo). Throw ステートメントを使用してコード内のエラーをトラップすることができます。これは、Visual Basic によって、適切な例外処理コードが見つかるまで呼び出し履歴が上に移動されるためです。You can use the Throw statement to trap errors within your code because Visual Basic moves up the call stack until it finds the appropriate exception-handling code.

式が指定されていない Throw ステートメントは、Catch ステートメントでのみ使用できます。この場合、ステートメントは、現在 Catch ステートメントによって処理されている例外を再スローします。A Throw statement with no expression can only be used in a Catch statement, in which case the statement rethrows the exception currently being handled by the Catch statement.

Throw ステートメントは、expression 例外の呼び出し履歴をリセットします。The Throw statement resets the call stack for the expression exception. expression が指定されていない場合、呼び出し履歴は変更されません。If expression is not provided, the call stack is left unchanged. StackTrace プロパティを使用して、例外の呼び出し履歴にアクセスできます。You can access the call stack for the exception through the StackTrace property.

Example

次のコードでは、Throw ステートメントを使用して例外をスローします。The following code uses the Throw statement to throw an exception:

' Throws a new exception.
Throw New System.Exception("An exception has occurred.")

参照See also