Оператор Exit

Выполняет выход из блока кода операторов Do…Loop, For…Next, Function, Sub или Property.

Синтаксис

Exit Do
Exit For
Exit Function
Exit Property
Exit Sub

Синтаксис оператора Exit состоит из следующих частей:

Statement Описание
Exit Do Предоставляет способ выхода из ... Оператор Loop . Может использоваться только в пределах оператора Do...Loop. Exit Do передает управление оператору, следующему за оператором Loop. При использовании в пределах вложенных операторов Do...Loop, Exit Do передает управление в цикл, находящийся на один вложенный уровень выше, чем цикл, где выполняется оператор Exit Do.
Exit For Предоставляет способ выхода из цикла For. Его можно использовать только в for... Далее или Для каждого... Следующий цикл. Оператор Exit For передает управление оператору, следующему за оператором Next. При использовании во вложенных циклах For оператор Exit For передает управление циклу, находящемуся на один вложенный уровень выше цикла, где выполняется оператор Exit For.
Exit Function Немедленно завершает процедуруFunction, в которой она отображается. Выполнение продолжается с использованием оператора, который следует за оператором, выполнившим вызов процедуры Function.
Exit Property Немедленно завершает процедуру Property , в которой она отображается. Выполнение продолжается с использованием оператора, который следует за оператором, выполнившим вызов процедуры Property.
Exit Sub Немедленно завершает процедуру Sub , в которой она отображается. Выполнение продолжается с использованием оператора, который следует за оператором, выполнившим вызов процедуры Sub.

Замечания

Не следует путать операторы Exit иEnd. Оператор Exit не определяет завершение структуры.

Пример

В этом примере оператор Exit используется для выхода из цикла For...Next, процедур Do...Loop и Sub.

Sub ExitStatementDemo() 
Dim I, MyNum 
 Do ' Set up infinite loop. 
 For I = 1 To 1000 ' Loop 1000 times. 
 MyNum = Int(Rnd * 1000) ' Generate random numbers. 
 Select Case MyNum ' Evaluate random number. 
 Case 7: Exit For ' If 7, exit For...Next. 
 Case 29: Exit Do ' If 29, exit Do...Loop. 
 Case 54: Exit Sub ' If 54, exit Sub procedure. 
 End Select 
 Next I 
 Loop 
End Sub

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.