函式是一組可重複使用的程式碼,可以在程式中的任何地方呼叫。這消除了一遍又一遍地編寫相同的程式碼的需要。這使程式員能夠將一個大程式劃分成許多小的可管理的功能模組。
除了內建函式外,VBA還允許編寫使用者定義的函式。 在本章中,我們將學習如何在VBA中編寫自己的函式。
一個VBA函式可以有一個可選的return
語句。如果要從函式返回值,則可使用return
語句。
例如,可以在一個函式中傳遞兩個數位,然後從函式中返回它們的乘積。
註 - 函式可以返回由逗號分隔的多個值,作為分配給函式名稱本身的陣列。
在使用函式之前,我們需要定義這個特定的函式。 在VBA中定義函式的最常見的方法是使用Function
關鍵字,後跟一個唯一的函式名稱,它可能會也可能不會帶有一個帶有End Function
關鍵字的引數列表和一個語句,這表示函式的結束。以下是定義函式的基本語法。
基本語法
Function Functionname(parameter-list)
statement 1
statement 2
statement 3
.......
statement n
End Function
新增以下函式計算返回面積。請注意,可以使用函式名稱本身返回一個值/值。
Function findArea(Length As Double, Optional Width As Variant)
If IsMissing(Width) Then
findArea = Length * Length
Else
findArea = Length * Width
End If
End Function
要呼叫函式,請使用函式名稱呼叫函式,如以下螢幕截圖所示。
計算面積的結果輸出如下所示將顯示給使用者。