数组的参数必须是 ByRef
以 Dim、ReDim,或 Static 声明的数组,不能以 ByVal 的方式传递。这个错误的起因与解决方法如下所示:
- 您试图以 ByVal 的方式传递整个数组。
数组中个别的元素可用 ByVal (按值) 传递,但整个数组必须以 ByRef (按地址方式)传递。请注意 ByRef 为缺省值。如果为了防止对数组元素的更改返回调用者,必须以 ByVal 方式传递数组的话,可以传递括号中的数组参数,或是将它放在 Variant 之中,再将此 Variant 传递至 ByVal 参数,如下所示:
Dim MyVar As Variant MyVar = OldArray()