子程序声明
子程序
语法示例:
Sub SimpleSub()
... lines of code EndSub |
•Sub表示该程序的关键词。
•SimpleSub是分配给子程序的名称。
•圆括号可以包含一个参数列表。
•子程序的代码块在右参数括号之后立即开始。
•EndSub 表示代码块的结束。
提示: | 不允许有递归或级联的子程序声明,即一个子程序不得包含另一个子程序。 |
参数
参数也可以通过程序传递,使用以下语法:
•所有参数都必须是变量
•变量必须以\$ 字符为前缀
•局部变量是在子程序中定义的
•全局变量是在子程序之外明确声明的
•在圆括号内多个参数之间用“,” 逗号字符分隔
•参数可以传递值
参数—传递值
参数可以通过两种方式传递,通过值和通过引用,分别使用ByVal和ByRef关键词。
语法:
' define sub CompleteSub() [Sub CompleteSub( \$param, ByVal \$paramByValue, ByRef \$paramByRef ) ] ... |
•ByVal指定该参数是通过值传递的。请注意,大多数对象仅能通过引用传递。
•ByRef指定该参数是通过引用传递的。如果未指定ByVal或ByRef,则使用此默认值。
函数返回值
要从子程序中返回值,请使用return 语句。这类函数可以从表达式中调用。
示例:
' define a function [Sub MakeQualifiedName( ByVal \$namespacePrefix, ByVal \$localName ) if \$namespacePrefix = "" return \$localName else return \$namespacePrefix & ":"& \$localName endif EndSub ] |