ByVal是传递值 源数据不会被修改,你可以把这个值当作自己的局部变量来使用;ByRef是传递地址,源数据可能被修改,你对这个变量的操作将对你传入的那个变量产生影响,就像指针的感觉。


Sub add1(byval no )

no = no + 100

End Sub


Sub add2(byref no)

  no = no +100

End Sub


Dim a

a = 100

Call add1(a)


msgbox "a = " & a


Call add2(a)


msgbox "按地址传递,源参值会被修改! a = " & a