函数的定义与调用Function
Tips:函数与子过程的区别是,函数可以返回值。如果一个函数不返回值,它与子过程并无区别,其中调用方式与子过程相同。
- 无参子函数定义与调用
//无参子函数的定义: Function [函数名]() As [返回值类型] //语句1 //语句2 //... //语句n [函数名] = [返回值] End Function //无参子函数的调用:直接写函数名就好了 不用写括号 //E.g: Sub Main() //函数返回值继续参与计算 Dim result As Double result = RandNum + 3 //直接写函数名就好了 End Sub '函数:返回一个随机值 Function RandNum() RandNum = Rnd * 100 //[函数名] = [返回值] End Function
- 有参子函数定义与调用
Function [函数名]([变量名1] As [数据类型1],...[变量名n] As [数据类型n]) As [返回值类型] //语句1 //语句2 //... //语句3 //[函数名] = [返回值] End Function //E.g: //子过程 Sub Main() Dim result As Double result = Add(12, 345) End Sub //子函数:返回两数的和 Function Add(num1 As Double, num2 As Double) As Double Add = num1 + num2 End Function
函数括号后面的
As 数据类型
虽然并不是必须的,但是我强烈建议加上。因为函数通常都需要有返回值,这个数据类型就表示着返回值的数据类型。函数体最后通常都带有一条返回值语句,把函数执行的结果赋值给函数名,就可以在调用这个函数的地方得到这个函数的执行结果。这个返回结果的数据类型应该与函数名后面As的数据类型一致,否则可能会出错。
函数的提前结束
Exit Function结束 当前函数
End 结束 当前运行的所有VBA 过程和函数
标签:Function,语句,End,函数,数据类型,返回值 From: https://www.cnblogs.com/YYZYCS/p/17491246.html