【发布时间】:2009-10-01 13:11:15
【问题描述】:
我在 VBA 中有一个函数,类型为
Function MyFunc(Indx As Integer, k As Long, Rho As Range, A As Range) As Variant
....
End Function
在 Excel 工作表中作为用户定义的函数调用。当最后两个参数是一个范围调用时
结果 = MyFunc(1,98,A1:A2, B1:B2))
它工作正常。但是,当我尝试直接使用数组常量而不是范围时
结果 = MyFunc(1,98,{10,11}, {20,30})
它返回 #VALUE 错误。
我想我可以通过将最后两个参数重新定义为 double 类型的数组来解决它,但这也不起作用
Function MyFunc(Indx As Integer, k As Long, Rho() As Double, A() As Double) As Variant
....
End Function
有人对灵活的解决方案有建议吗,这将允许两种调用方法:按范围,以及按数组常量?
【问题讨论】:
-
是否有任何内置函数允许范围或数组常量作为参数?事实上,是否有任何内置函数甚至只允许数组常量? (我以为有,但我检查过的所有实际上都在使用参数列表数组)