明明写了个自定义函数,为什么调用不了?

2021-08-31 11:45:43 浏览数 (1)

小勤:这个“调用自定义函数”功能怎么用的?我明明写了个自定义函数(add)的哦,为什么调用不了?

大海:你仔细看看这个功能的说明?

小勤:“调用此文件中为各行定义的自定义函数”?还是不理解。

大海:不理解没关系,但平时要形成出现问题时看功能说明或帮助的习惯,即使一开始的时候可能因为翻译的原因看起来觉得很别扭,但这很有利于你以后去学习新的知识。再回到这个问题,你在这个查询以外写个自定义函数看看?注意不要跟你现在这个(add)同名哦。

小勤:好的。在查询列表里【右键-新建查询-其他源-空查询】

然后直接输入自定义函数内容:

大海:嗯。然后再去刚才那个“调用自定义函数”功能试试?

小勤:啊!这个可以啊,原来要这样?这个功能说明里“此文件中”的意思是只能调用本查询外部的自定义函数,而不能调用本查询内部的自定义函数?

大海:对的。就是这个意思。另外,你试试,如果外面的函数跟查询里面的函数名称一样了,会怎样?

小勤:这个……我原来在查询里的add函数是对参数加1:

外面的名字也改为add,对参数加1000:

大海:然后用调用自定义函数的功能试试?

小勤:……这个选中的应是指外面那个函数吧?应该数量加上1000?

大海:对的。但是结果呢?

小勤:晕,居然是加1哦!也就是说最终还是用了查询里面的那个自定义函数?

大海:对的,当查询内的自定义函数与查询外的自定义函数名称一样时,会以查询内部的为准。所以,这里要注意的是:

“调用自定义函数”的操作功能只是在一定程度上简化了写添加自定义列公式的工作,并不会因为它只能选择外面的自定义函数,就一定会使用选择的那个函数;同时,在写自定义函数时,一定要注意,无论在查询内部还是外部,不要使用相同的名称,否则容易导致出现了错误(这往往是没有错误提示的逻辑计算错误,数据计算复杂时很难发现)。

小勤:好的。

add

0 人点赞