副程式(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工作表中調用副程式。
上一篇:
VBA用戶自定義函數
下一篇:
VBA事件