vb传递动态数组 类型检查错误

来源:百度知道 编辑:UC知道 时间:2024/06/24 15:36:53
数组定义如下(注:Range为EXCEL对象类型)
Public FristClass() As Range
Public SecondClass() As Range

调用字过程 提示错误 “Byref类型参数不符”
Call LoadMain(FristClass, SecondClass)

字过程如下

sub LoadMain (FristClass() As Range , SecondClass() As Range)

。。。
。。。
。。。
end sub

请问我代码那里有问题吗?子程序再DLL里面,DLL注册引用都没有问题
如果问题解决 小弟感谢50分,我分数不多 谢谢帮助
第一个朋友我不理解你的回答和我的问题怎么对应
第二个朋友我的声明是在模块里的

还有:这句代码有的时候可以通过,有的时候不行,我不知道哪里有问题然后就再特定条件下就引发了错误

我试用文字解释你的代码.

你想要的是:
一个Excel用的Range数组

你的代码是:
建立一个数组, 每个元素的类型是Range

我再举一个例子:

Public str() as String
这代表: 我建立一个数组名叫str, str中每个元素都必须是String, 不可以是int, 不可以是boolean.

以你的情况, 你应该是想要这个

dim r as Range
dim firstClass(1)

set r = firstClass(1)

Public FristClass() As Range
Public SecondClass() As Range
试试将以上申明语句放在模块中