param definition
[ [Optional] [ | ByVal | ByRef ] | ParamArray ] param[type][( )] [As type]
[ = defaultvalue ]
The param receives the value of the associated
expression in the Declare, Sub,
Function or Property
call. (See arglist.)
•An Optional param
may be omitted from the call. It may also have a defaultvalue.
The parameter receives the defaultvalue if a value is not specified by
the call. If the defaultvalue is omitted, the parameter is a Variant
and no value is specified in the call then IsMissing
will return True.
•All parameters following an
Optional parameter must also be Optional.
•ParamArray may be used on the
final param. It must be an array of Variant
type. It must not follow any Optional parameters. The ParamArray receives
all the expressions at the end of the call as an array. If LBound(param) > UBound(param) then the ParamArray didn't receive any
expressions.
•If the param
is not ByVal and the expression is merely a variable then the param
is a reference to that variable (ByRef). (Changing param
changes the variable.) Otherwise, the parameter variable is local to the
procedure, so changing its value does not affect
the caller.
•Use param(
) to specify an array parameter. An array parameter must be referenced
and can not be passed by value. The bounds of the parameter array are
available via LBound( ) and UBound(
).