乐于分享
好东西不私藏

Excel 2024/365新函数系列讲座(37):LAMBDA 函数应用(2)—— 创建自定义函数

Excel 2024/365新函数系列讲座(37):LAMBDA 函数应用(2)—— 创建自定义函数
通过定义名称的方法利用LAMBDA函数设计自定义函数,可以在当前工作簿中的任何一个工作表使用,非常方便和灵活。
例如,我们可以根据实际数据处理分析的需要,创建自己的LAMBDA函数库(相当于使用VBA设计了大量的自定义函数),这样在数据分析建模中可以快速使用这些LAMBDA函数,提升数据处理效率,降低错误率。
1、定义名称的基本方法
以公式“=LAMBDA(x,y,x*y)”为例,定义名称并在工作表中调用的方法和步骤如下。
步骤1:定义名称。
在“公式”选项卡中,单击“定义名称”命令按钮,打开“定义名称”对话框,在名称输入框中输入具体的名称,例如“两数计算”,在引用位置输入框中输入LAMBDA函数公式表达式,单击“确定”按钮,就定义了一个名称“两数计算”。
打开“名称管理器”对话框,可以看到已经有了一个名称“两数计算”,在这个对话框中,还可以对公式进行编辑修改。
定义好名称后,这个名称就可以被当成一个像Excel内置函数那样使用了。可以在单元格之间键入下面的公式,如图所示。这个函数有两个参数,分别指定两个要计算的数值或单元格引用。
=两数计算(B3,C3)
2、简单应用示例:判断日期所属季度
Excel没有判断指定日期所属季度的函数,不过我们可以使用LAMBDA函数来设计这样的函数。
下图是一个简单示例,A列是日期,在单元格B2输入下面的公式,即可快速得到指定日期所属的季度:
=季度(A2)
这个函数有1个参数,指定要判断季度的日期或单元格引用。

这个函数“季度”就是使用LAMBDA函数设计的,公式如下,如图7-10所示。这个函数有一个参数变量“日期”。

=LAMBDA( 日期,CHOOSE(ROUNDUP(MONTH(日期)/3,0),"一季度","二季度","三季度","四季度")

下图是利用自定义函数“季度”,计算各个产品在每个季度的销售合计数,公式如下:

=PIVOTBY(B2:B1604, 季度(A2:A1604), C2:C1604, SUM, 0, 1)

我们也可以定义一个判断日期是否为上旬、中旬和下旬的自定义函数“上中下旬”,公式如下:

=LAMBDA(日期,IF(DAY(日期)<=10,"上旬",IF(DAY(日期)<=20,"中旬","下旬")))

这样,就可以统计某个月上中下旬的汇总表,如下图所示,参考公式如下:

=LET(

日期, A2:A1604,

销售额, C2:C1604,

月份, TEXT(日期,"mm月"),

旬日, 上中下旬(日期),

PIVOTBY(月份, 旬日, 销售额, SUM, 0, 1)

)

---------------------
(未完继续)