问题
单项选择题
在过程定义中有语句:
Private Sub GetData(ByVal data As Integer)
其中“ByVal”的含义是
A.传值调用
B.形式参数
C.传址调用
D.实际参数
答案
参考答案:A
解析: 本题考查的是VBA编程基础、参数的传递。参数有两种传递方式:传地址和传值传递。
在过程声明时形参用ByVal声明,则表示该参数按值传递,是“单向”调用形式,过程调用只是相应位置实参的值“单向”传送给形参处理,而被调用过程内部对形参的任何操作引起的形参值的变化均不会反馈、影响实参的值,即此时形参的值不会返回到实参。在这个过程中,数据的传递只有单向性,故称为“传值调用”的“单向”作用形式。
若用ByRef声明,则表示次参数为传值调用,此时形参的变化将会返回到实参。
若没有声明传递类型,则默认为传值传递。