Exits a block of Do...Loop, For...Next, Function, or Sub code.
Exit Do Exit For Exit Function Exit Property Exit Sub
The Exit statement syntax has these forms:
Statement | Description |
---|---|
Exit Do | Provides a way to exit a Do...Loop statement. It can be used only inside a Do...Loop statement. Exit Do transfers control to the statement following the Loop statement. When used within nested Do...Loop statements, Exit Do transfers control to the loop that is one nested level above the loop where it occurs. |
Exit For | Provides a way to exit a For loop. It can be used only in a For...Next or For Each...Next loop. Exit For transfers control to the statement following the Next statement. When used within nested For loops, Exit For transfers control to the loop that is one nested level above the loop where it occurs. |
Exit Function | Immediately exits the Function procedure in which it appears. Execution continues with the statement following the statement that called the Function. |
Exit Property | Immediately exits the Property procedure in which it appears. Execution continues with the statement following the statement that called the Property procedure. |
Exit Sub | Immediately exits the Sub procedure in which it appears. Execution continues with the statement following the statement that called the Sub. |
The following example illustrates the use of the Exit statement:
Sub RandomLoop Dim I, MyNum Do ' Set up infinite loop. For I = 1 To 1000 ' Loop 1000 times. MyNum = Int(Rnd * 100) ' Generate random numbers. Select Case MyNum ' Evaluate random number. Case 17: MsgBox "Case 17"Exit
For ' If 17, exit For...Next. Case 29: MsgBox "Case 29"Exit
Do ' If 29, exit Do...Loop. Case 54: MsgBox "Case 54"Exit
Sub ' If 54, exit Sub procedure. End Select Next Loop End Sub
Do...Loop Statement | For Each...Next Statement | For...Next Statement | Function Statement | Sub Statement