当前位置:首页 > 资讯 > 正文

自定义函数实现SUBTOTAL函数的全部功能

学习Excel技术,关注微信公众号:
excelperfect

标签:Excel函数SUBTOTAL函数LAMBDA函数
SUBTOTAL函数与SEQUENCE函数组合应用中,使用Excel动态数组一次性汇总所有数据的各种结果;在用动态数组来增强SUBTOTAL函数的汇总处理中,实现了一次性利用SUBTOTAL函数的11个函数,列出函数名及其对应的计算结果。然而,这些公式都很长,看起来比较复杂,我们可以使用LAMBDA函数来自定义一个函数,以简化这些公式,实现数据的快速汇总。
LAMBDA函数允许创建自定义函数,以简化复杂的计算从而更容易使用。在单元格O3中,输入公式:
=LAMBDA(rng,
LET(f,"AVERAGE,COUNT,COUNTA,MAX,MIN,PRODUCT,STDEV,STDEVP,SUM,VAR,VARP",
fs,TEXTSPLIT(f,,","),
sub,SUBTOTAL(SEQUENCE(11),rng),
HSTACK(fs,sub)))(F3:F18)
以测试运算结果,如下图1所示。
1
可以看到,LAMBDA接受一个名为rng的参数,用于SUBTOTAL函数中。测试通过后,我们来自定义函数。
首先,单击功能区“公式”选项卡“定义的名称”组中的“定义名称”,在“新建名称”对话框中,输入名称以及相应的公式,如下图2所示。
2
在单元格R3中直接输入:
=fnSUBTOTAL(F3:F18)
结果如下图3所示。
3
欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。
欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料,并通过社群加入专门的微信讨论群,更方便交流。