LOGO OA教程 ERP教程 模切知识交流 PMS教程 CRM教程 开发文档 其他文档  
 
网站管理员

必须要搞清楚LET函数和LAMBDA函数的核心区别


2024年12月8日 21:35 本文热度 459

在B站的相关视频中,我经常看到有人在留言区提及LAMBDA函数与LET函数并无差异。而他们之所以会得出这样的结论,我想主要是因为讲解者往往采用了类似如下的案例来予以阐述:

=LET(x,2,y,3,x+y)

结果为5,没毛病。

=LAMBDA(x,y,x+y)(2,3)

结果同样为5,也没毛病。

这时有人就说了,确实没有什么大的区别呀,只不过是LET函数将变量的值置于括号内部,而LAMBDA函数把变量的值放置在括号之外罢了。

看到这里,我不得不重点说明一下,如果您真的如此理解,那可大错特错了。上面所举的例子仅仅只是LAMBDA函数的基础效用罢了。换言之,LAMBDA函数虽具备这样的功能,然而在实际运用场景里却很少这样用。

LAMBDA函数最为关键之处在于其自定义特性,它能够与其他函数协同配合,并且可以有效地化解传递参数方面的难题。这一点您务必要清晰知晓,否则您想要熟练掌握EXCEL的新型函数将会困难重重。

常常会与LAMBDA函数协同运用的函数包括MAP、REDUCE、SCAN、BYROW、BYCOL、MAKEARRAY等函数。可以说,这些函数堪称是LAMBDA函数的专属得力助手,它们彼此配合,相得益彰,能够在众多复杂的数据处理与计算情境中发挥出强大的效能,助力用户更为高效、精准地达成各类任务目标,极大地拓展了Excel在数据处理领域的深度与广度,为使用者提供了更为丰富多样且灵活多变的解决方案。

为了清晰阐释此问题,我们选取一个相对简易的案例加以说明:

=BYROW(B2:G9,LAMBDA(x,AVERAGE(x)))

此案例在之前讲解BYROW函数时也曾提及,即按行求取平均值。

仔细研究上述公式后,我们便能察觉出三个关键问题:

第一,在实际运用LAMBDA函数求平均值的场景中,并非如部分人所误解的那样将变量的值置于括号之外,恰恰相反,此处括号外面并无任何内容。

第二,单元格区域[B2:G9]的每一行均借助BYROW函数传递至LAMBDA函数的变量x里,进而开展AVERAGE计算操作,随后直接输出相应的计算结果。瞧见了吧,此即为典型的传递参数过程。

其三,此刻若我们尝试使用LET函数去替换上述公式里的LAMBDA函数,也就是:

=BYROW(B2:G9,LET(x,AVERAGE(x)))

那么,在此情形下,单元格区域[B2:G9]的每一行是否能够顺利传递至LET函数的x之中呢?又是否能够最终成功计算得出每行的平均值呢?很显然,答案是这两者都是否定的。它既不能传递参数,也不能计算平均值。

看见没有,系统直接将=BYROW(B2:G9,LET(x,AVERAGE(x)))这个所谓的公式视作文本处理了。既然已被当作文本,又何谈函数的功能,何谈进行计算呢?!

谈及此处,或许有人又会萌生这样的念头,即认为LET函数无法进行嵌套操作。实则不然,LET函数主要致力于解决变量设置方面的问题,简单来讲,其核心作用在于简化公式。

例如下面这个计算含税总额的案例便运用了LET函数嵌套:

=LET(unit_price, A2, quantity, B2, 

tax_rate, C2, 

subtotal, 

LET(unit_price, A2, quantity, B2, unit_price*quantity), 

total, subtotal*(1 + tax_rate), total)

上面的公式虽然写得很长,但是其复杂程度却并不高。与之相反,该公式的逻辑条理更为明晰,更易于理解与领会。


该文章在 2024/12/9 14:19:06 编辑过
关键字查询
相关文章
正在查询...
点晴ERP是一款针对中小制造业的专业生产管理软件系统,系统成熟度和易用性得到了国内大量中小企业的青睐。
点晴PMS码头管理系统主要针对港口码头集装箱与散货日常运作、调度、堆场、车队、财务费用、相关报表等业务管理,结合码头的业务特点,围绕调度、堆场作业而开发的。集技术的先进性、管理的有效性于一体,是物流码头及其他港口类企业的高效ERP管理信息系统。
点晴WMS仓储管理系统提供了货物产品管理,销售管理,采购管理,仓储管理,仓库管理,保质期管理,货位管理,库位管理,生产管理,WMS管理系统,标签打印,条形码,二维码管理,批号管理软件。
点晴免费OA是一款软件和通用服务都免费,不限功能、不限时间、不限用户的免费OA协同办公管理系统。
Copyright 2010-2024 ClickSun All Rights Reserved