Function 过程是一系列由 Function 和 End Function 语句所包含起来的 Visual Basic 语句。Function 过程和 Sub 过程很类似,但函数可以返回一个值。Function 过程可经由调用者过程通过传递参数,例如常数、变量、或是表达式等来调用它。如果一个 Function 过程没有参数,它的 Function 语句必须包含一个空的圆括号。函数会在过程的一个或多个语句中指定一个值给函数名称来返回值。
在下面的示例中,Celsius 函数会根据华氏温度来计算摄氏温度。当 Main 过程调用此函数时,会有一包含参数值的变量传递给此函数。而计算的结果会返回到调用的过程,并且显示在一个消息框中。
Sub Main()
temp = Application.InputBox(Prompt:= _
"Please enter the temperature in degrees F.",
Type:=1)
MsgBox "The temperature is " & Celsius(temp) & "
degrees C."
End Sub
Function Celsius(fDegrees)
Celsius = (fDegrees - 32) * 5 / 9
End Function