Поделиться через


GoSub... Оператор Return

Переходит в подпрограмму и возвращается из подпрограммы в процедуре.

Синтаксис

ЛинияGoSub
... линия
линия...
Возвращать

Аргументомстроки может быть любая метка строки или номер строки.

Замечания

Используйте GoSub и Return в любом месте процедуры, но GoSub и соответствующая инструкция Return должны находиться в одной процедуре. Подпрограмма может содержать более одного оператора Return, но первый встреченный оператор Return заставляет поток выполнения перейти обратно в оператор сразу же после самого последнего выполненного оператора GoSub.

Примечание.

Нельзя входить в процедуры Sub или выходить из них с помощью GoSub...Return.

Совет

Создание отдельных вызываемых процедур может обеспечить более структурированную альтернативу использованию GoSub...Return.

Пример

В этом примере используется GoSub для вызова подпрограммы в процедуре Sub. Оператор Return вызывает возобновление выполнения на операторе, который сразу же следует за оператором GoSub. Инструкция Exit Sub используется для предотвращения случайного попадания элемента управления в подпрограмму.

Sub GosubDemo() 
Dim Num 
' Solicit a number from the user. 
 Num = InputBox("Enter a positive number to be divided by 2.") 
' Only use routine if user enters a positive number. 
 If Num > 0 Then GoSub MyRoutine 
 Debug.Print Num 
 Exit Sub ' Use Exit to prevent an error. 
MyRoutine: 
 Num = Num/2 ' Perform the division. 
 Return ' Return control to statement. 
End Sub ' following the GoSub statement. 

См. также

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

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