GoSub...Return 语句

分支到过程中的子例程并从该子例程返回。

语法

GoSub
... 线
线...
Return

参数可以是任何行标签行号

备注

在过程中的任意位置使用 GoSubReturn ,但 GoSub 和相应的 Return 语句必须位于同一过程中。 虽然一个子例程可以包含多个 Return 语句,但遇到的第一个 Return 语句会导致执行流分支回到紧跟最新执行的 GoSub 语句的语句

注意

[!注释] 无法使用 GoSub...Return 进入或退出 Sub 过程。

提示

通过创建可调用的独立过程,可以提供针对使用 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。