A-A+

若要在子过程Proc l调用后返回两个变量的结果 下列过程定义语句中有效的是()。A.Sub

2022-08-06 03:10:13 问答库 阅读 175 次

问题详情

若要在子过程Proc l调用后返回两个变量的结果,下列过程定义语句中有效的是()。
A.Sub Proc1(n,m)
B.Sub Proc1(By Val n ,m)
C.Sub Proc1(n, By Val m)
D.Sub Proc1 (By Val n,By Val m)请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:A
解析:本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。由于本题要求可以返回两个变量的结果,所以应该使用传址调用,不能出现传值调用,也就是不能出现使用ByVal声明的形参。

考点:过程,变量