3、VBA 编程基础(8)
时间:2025-04-21
时间:2025-04-21
Sub Main()
MultiBeep 56
Message
End Sub
Sub MultiBeep(numbeeps)
For counter = 1 To numbeeps
Beep
Next counter
End Sub
Sub Message()
MsgBox "Time to take a break!"
End Sub
1.调用具有多个参数的 Sub 过程
下面的示例展示了调用具有多个参数的 Sub 过程的两种不同方法。当第二次调用 HouseCalc 时,因为使用 Call 语句所以需要利用括号将参数括起来。
Sub Main()
HouseCalc 99800, 43100
Call HouseCalc(380950, 49500)
End Sub
Sub HouseCalc(price As Single, wage As Single)
If 2.5 * wage <= 0.8 * price Then
MsgBox "You cannot afford this house."
Else
MsgBox "This house is affordable."
End If
End Sub
在调用 Function 过程时使用括号。
为了使用函数的返回值,必须指定函数给变量,并且用括号将参数封闭起来;如下示例所示:
Answer3 = MsgBox(Are you happy with your salary?, 4,Question 3)
如果不在意函数的返回值,可以用调用 Sub 过程的方式来调用函数。如下面示例所示,可以省略括号,列出参数并且不要将函数指定给变量:
MsgBox Task Completed!, 0, Task Box
注意在上述例子中若包含括号,则语句会导致一个语法错误。
2.传递命名参数
Sub 或 Function 过程中的语句可以利用命名参数来传递值给被调用的过程。参数有两种传递方式:按值来传递和按地址来传递。按值传递只是传递参数的一个副本,在函数内建立一个同参数类型及内容一样的变量,在过程体内部参数对参数所作的改变不会影响到实际参数;按地址传递则不然,它传递的是实际参数的地址,过程中所有对参数的改变都将影响到实际参数”。命名参数的组成是由参数名称紧接着冒号(:=)以及等号,然后指定一个值给参数。
下面的示例使用命名参数来调用不具返回值的 MsgBox 函数。
MsgBox Title:=Task Box, Prompt:=Task Completed!
下面的示例使用命名参数调用 MsgBox 函数。将返回值指定给变量 answer3。
answer3 = MsgBox(Title:=Question 3, _
上一篇:高级人才面试题库——九型人格.