c语言返回值可不可以是数组 VBA自定义函数的返回值能是数组吗?
VBA自定义函数的返回值能是数组吗?
可以的。要点有两个:一是在自定义函数中定义一个数组来存放相关值,如dim a(2),然后对其赋值:a(1)=5,a(2)=10,并将数组值赋给函数。第二个要点是如何调用。调用时,需定义一个变体变量,如 dim c As Variant。假设自定义函数的函数名是 d,则调用可写作c=d(相应参数)这时,c(1)=5,c(2)=10
VBA自定义函数的返回值能是数组吗?
当我们使用Excel的内置函数来返回某个值时,如果参数不对,或是找不到,往往会返回#N/A 或者 #Value!等提示信息。
我们在模块中自己编写的VBA代码是否也能返回这些信息呢?
答案是肯定的,因为模块中的代码本身就可以在公式里调用,那么自然也可以返回这些信息了。
但是,很重要的一点是,这些信息不是文本,而是内置的错误值!
下表给出了一些常用的错误值供参考:
Constant Error Number Cell error value
xlErrDiv0 2007 #DIV/0!
xlErrNA 2042 #N/A
xlErrName 2029 #NAME?
xlErrNull 2000 #NULL!
xlErrNum 2036 #NUM!
xlErrRef 2023 #REF!
xlErrValue 2015 #VALUE!
通过调用CVErr(error constant)来返回值,这样在界面上看到的就是我们要显示的错误值了。
例如:
CVErr(xlErrValue)
vba function返回值为数组怎么接收?
假定有如下自定义函数
Function mm()
mm = Array(1, 2, 3, 4, 5)
End Function
若要同时返回mm的所有值的话,选中A1:E1,输入=mm()然后Ctrl Shift 回车结束
也可以用index函数,来从mm()返回的数组中取值,如
=index(mm(),3)
也可以对mm返回的数组进行求和,如
=sum(mm())
也可以对求极值求均值。。。。。。。。。也可以。。。。
c语言返回值可不可以是数组 数组作为函数参数 函数返回值怎么理解
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。