以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]自定义函数的参数设置 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=133245) |
-- 作者:chnfo -- 发布时间:2019/4/10 15:34:00 -- [求助]自定义函数的参数设置 字义函数“ABC” dim y as string = args(1) dim z as string = args(2) 执行代码 有时候,调用函数,可能只需要输入x,y两个参数,而不需要用到z 其实,使用函数的时候是 Functions.Execute(“ABC”,x,y) 这时候,怎么定义这个函数的参数呢? 如果使用函数的时候不输z参数,那么就会报了错误:索引超出了数组界限 [此贴子已经被作者于2019/4/10 15:36:46编辑过]
|
-- 作者:有点甜 -- 发布时间:2019/4/10 16:34:00 --
判断一下 args.length 的值,即可
|
-- 作者:chnfo -- 发布时间:2019/4/21 10:11:00 -- 帮助里的“自定义函数”列了一个例子,是说明args.length的, 不过那是用来比较所有参数的大小。 比如说要按输入参数来计算结果 \'Dim a As Double = args(0) \'Dim b As Double = args(1) \'Dim k As Integer = args(2) \'Dim c As Double = args(3) \' \' \'Dim v As Double = 0 \'If k = 0 Then \'v = a + b \'Else \'v = a + b * C \'End If \' \'Return v 这样的函数在应用的时候,如果我用了Functions.Execute("函数",4,5,0) 也就是说第三个参数是0时,第4个参数就不用输了。 但直接这样执行是不行的,会报错 如果要达到上面所说的目的,这个函数该如何定义,用的时候又要怎么用呢 [此贴子已经被作者于2019/4/21 16:10:50编辑过]
|
-- 作者:有点色 -- 发布时间:2019/4/21 17:58:00 -- 判断,调用不同代码啊,如
If args.length = 1 Then
ElseIf arys.length = 2 Then
ElseIf arys.length = 3 then
End If |