子程序(_Sub Procedures_,也叫子过程)与函数类似,但有一些差异。
- 子过程不需要有返回一个值,而函数可能会或可能不会有返回一个值。
- 子程序可以不用
call
关键字来调用。 - 子程序总是包含在
Sub
和End Sub
语句中。
示例
Sub Area(x As Double, y As Double)
MsgBox x * y
End Sub
调用程序
要在脚本的某处调用过程,可以使用函数进行调用。无法使用与函数相同的方式来调用子过程,因为子过程不会返回值。
Function findArea(Length As Double, Width As Variant)
area Length, Width ' To Calculate Area 'area' sub proc is called
End Function
现在只能调用该函数,而不能调用子程序,如下图所示。
该区域的面积仅在消息框中计算和显示。
结果单元显示为零,因为计算的面积值不是从函数返回的。简而言之,不能直接在Excel工作表中调用子程序。