
- VBA 教程
- VBA - 主頁
- VBA - 概覽
- VBA - Excel 宏
- VBA - Excel 術語
- VBA - 宏註釋
- VBA - 訊息框
- VBA - 輸入框
- VBA - 變數
- VBA - 常量
- VBA - 運算子
- VBA - 決策
- VBA - 迴圈
- VBA - 字串
- VBA - 日期和時間
- VBA - 陣列
- VBA - 函式
- VBA - 子程式
- VBA - 事件
- VBA - 錯誤處理
- VBA - Excel 物件
- VBA - 文字檔案
- VBA - 程式設計圖表
- VBA - 使用者窗體
- VBA 實用資源
- VBA - 快速指南
- VBA - 實用資源
- VBA - 討論
VBA - 子程式
子程式與函式類似,但它們之間有一些差異。
子程式不返回任何值,而函式可以返回或不返回一個值。
子程式可以不帶呼叫關鍵字被呼叫。
子程式始終被包含在 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 工作表呼叫子過程。

廣告