VBA子程序(十六)

子程序(Sub Procedures,也叫子过程)与函数类似,但有一些差异。

  • 子过程不需要有返回一个值,而函数可能会或可能不会有返回一个值。
  • 子程序可以不用call关键字来调用。
  • 子程序总是包含在SubEnd 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工作表中调用子程序。

原文地址:https://www.cnblogs.com/sunyllove/p/11348324.html