Sub 和 Function 是VBA提供的兩種封裝體。
Set functionName = xxxxxx
Call ProcExcel (FirstArgument, SecondArgument)ProcExcel FirstArgument, SecondArgument
注意當使用 Call 語法時,參數必須在括號內。若省略 Call 關鍵字,則也必須省略參數兩邊的括號。
[Private|Public] [Static] Sub 過程名([參數列表 [As 數據類型]]) [語句塊]End Sub' [Private|Public]定義過程的作用範圍' [Static]定義過程是否為靜態' [參數列表]定義需要傳入的參數
調用Sub的方法有三種,使用Call、直接調用和Application.Run
舉個例子:
vba內部提供了大量的函數,也可以通過Function來定義函數,實現個性化的需求。
[Public|private] [Static] Function 函數名([參數列表 [As 數據類型]]) [As 數據類型] [語句塊] [函數名=過程結果]End Function
使用函數完成上面的例子:
參數傳遞
參數傳遞的方式有兩種,引用和傳值。 傳值,只是將數據的內容給到函數,不會對數據本身進行修改。 引用,將數據本身傳給函數,在函數內部對數據的修改將同樣的影響到數據本身的內容。
參數定義時,使用ByVal關鍵字定義傳值,子過程中對參數的修改不會影響到原有變量的內容。 默認情況下,過程是按引用方式傳遞參數的。在這個過程中對參數的修改會影響到原有的變量。 也可以使用ByRef關鍵字顯示的聲明按引用傳參。
Sub St1(ByVal n As Integer, ByRef range) ...Other codeEnd SUb
VBA編程神器 VBA代碼助手 可以極大提高編程速度,降低編程門檻歡迎使用
私信回復 代碼助手 即可獲得
更多功能請大家探索