共用方式為


Exit 陳述式 (Visual Basic)

退出程序或區塊,並立即將控制傳輸至接在程序呼叫或區塊定義之後的陳述式。

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 陳述式前面程式行上的函式名稱。 若要以一個陳述式指派傳回值並結束該函式,您可以使用 Return 陳述式 (Visual Basic)

  • Exit Property
    立即退出所在的 Property 程序, 程式碼會繼續執行呼叫 Property 程序的陳述式,也就是繼續執行要求或設定屬性值的陳述式。 Exit Property只可以用在屬性的 Get 或 Set 程序內。

    若要指定 Get 程序中的傳回值,您可以將該值指派給 Exit Property 陳述式前面程式行上的函式名稱。 若要以一個陳述式指派傳回值並結束 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 只可以用在 Try 或 Catch 區塊內,不可用在 Finally 區塊內。

  • Exit While
    立即結束它所在的 While 迴圈。 程式碼會繼續執行 End While 陳述式之後的陳述式。 Exit While 只能用在 While 迴圈內。 當用於巢狀 While 迴圈內時,Exit While 會將控制權轉移到比發生 Exit While 的迴圈高出一個巢狀層次的迴圈。

備註

請勿將 Exit 陳述式與 End 陳述式混淆。 Exit 不會定義陳述式的結尾。

範例

在下列範例中,當 index 變數大於 100 時,迴圈條件就會停止迴圈。 但是當索引變數大於 10 時,迴圈中的 If 陳述式會導致 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 

下列範例會將傳回值指派給函式名稱 myFunction,然後使用 Exit Function 從函式返回。

Function myFunction(ByVal j As Integer) As Double
    myFunction = 3.87 * j
    Exit Function 
End Function

下列範例使用 Return 陳述式 (Visual Basic) 指派傳回值並結束函式。

Function myFunction(ByVal j As Integer) As Double 
    Return 3.87 * j
End Function

請參閱

參考

Continue 陳述式 (Visual Basic)

Do...Loop 陳述式 (Visual Basic)

End 陳述式

For Each...Next 陳述式 (Visual Basic)

For...Next 陳述式 (Visual Basic)

Function 陳述式 (Visual Basic)

Return 陳述式 (Visual Basic)

Stop 陳述式 (Visual Basic)

Sub 陳述式 (Visual Basic)

Try...Catch...Finally 陳述式 (Visual Basic)