プロシージャまたはブロックを終了し、プロシージャ呼び出しまたはブロック定義の直後のステートメントに制御を転送します。
構文
Exit { Do | For | Function | Property | Select | Sub | Try | While }
ステートメント
Exit Do
表示される Do
ループを直ちに終了します。 実行は、 Loop
ステートメントの後のステートメントで続行されます。
Exit Do
は、 Do
ループ内でのみ使用できます。 入れ子になった Do
ループ内で使用すると、 Exit Do
は最も内側のループを終了し、次の上位レベルの入れ子に制御を転送します。
Exit For
表示される For
ループを直ちに終了します。 実行は、 Next
ステートメントの後のステートメントで続行されます。
Exit For
は、 For
...Next
または For Each
...Next
ループ内でのみ使用できます。 入れ子になった For
ループ内で使用すると、 Exit For
は最も内側のループを終了し、次の上位レベルの入れ子に制御を転送します。
Exit Function
表示される Function
プロシージャを直ちに終了します。 実行は、 Function
プロシージャを呼び出したステートメントに続くステートメントで続行されます。
Exit Function
は、 Function
プロシージャ内でのみ使用できます。
戻り値を指定するには、 Exit Function
ステートメントの前の行の関数名に値を割り当てることができます。 戻り値を割り当て、1 つのステートメントで関数を終了するには、代わりに Return ステートメントを使用できます。
Exit Property
表示される Property
プロシージャを直ちに終了します。 実行は、 Property
プロシージャを呼び出したステートメント(つまり、プロパティの値を要求または設定するステートメント)で続行されます。
Exit Property
は、プロパティの Get
または Set
プロシージャ内でのみ使用できます。
Get
プロシージャで戻り値を指定するには、Exit Property
ステートメントの前の行の関数名に値を割り当てることができます。 戻り値を割り当て、1 つのステートメントで Get
プロシージャを終了するには、代わりに Return
ステートメントを使用できます。
Set
プロシージャでは、Exit Property
ステートメントは Return
ステートメントと同じです。
Exit Select
表示されている Select Case
ブロックを直ちに終了します。 実行は、 End Select
ステートメントの後のステートメントで続行されます。
Exit Select
は、 Select Case
ステートメント内でのみ使用できます。
Exit Sub
表示される Sub
プロシージャを直ちに終了します。 実行は、 Sub
プロシージャを呼び出したステートメントに続くステートメントで続行されます。
Exit Sub
は、 Sub
プロシージャ内でのみ使用できます。
Sub
プロシージャでは、Exit Sub
ステートメントは Return
ステートメントと同じです。
Exit Try
表示される Try
または Catch
ブロックを直ちに終了します。
Finally
ブロックがある場合は実行が続行され、それ以外の場合は End Try
ステートメントに続くステートメントが実行されます。
Exit Try
は、Finally
ブロック内ではなく、Try
またはCatch
ブロック内でのみ使用できます。
Exit While
表示される While
ループを直ちに終了します。 実行は、 End While
ステートメントの後のステートメントで続行されます。
Exit While
は、 While
ループ内でのみ使用できます。 入れ子になった While
ループ内で使用すると、 Exit While
は、 Exit While
が発生するループの上の 1 つの入れ子になったレベルであるループに制御を転送します。
注釈
Exit
ステートメントとEnd
ステートメントを混同しないでください。
Exit
はステートメントの末尾を定義しません。
例 1
次の例では、 index
変数が 100 より大きい場合、ループ条件はループを停止します。 ただし、ループ内の If
ステートメントでは、インデックス変数が 10 より大きい場合、 Exit Do
ステートメントはループを停止します。
Dim index As Integer = 0
Do While index <= 100
If index > 10 Then
Exit Do
End If
Debug.Write(index.ToString & " ")
index += 1
Loop
Debug.WriteLine("")
' Output: 0 1 2 3 4 5 6 7 8 9 10
例 2
次の例では、戻り値を関数名 myFunction
に割り当て、 Exit Function
を使用して関数から戻ります。
Function MyFunction(ByVal j As Integer) As Double
MyFunction = 3.87 * j
Exit Function
End Function
例 3
次の例では 、Return ステートメント を使用して戻り値を割り当て、関数を終了します。
Function MyFunction(ByVal j As Integer) As Double
Return 3.87 * j
End Function
こちらも参照ください
.NET