LAMBDA函数连载:excel中BYROW和BYCOL实现函数里的循环
英文单词row和column翻译为行和列,Excel/WPS中也是用它们表示行和列。
函数BYROW=By row,字面意思按行,函数的功能就是按行执行(LAMBDA);
=BYROW (数组, lambda())
函数BYCOL=By Column,字面意思按列,函数功能就是按列执行(LAMBDA)。
=BYCOL (数组, lambda())
注意,它们的第二参数一定是一个LAMBDA函数应用表达式。
这是一个平平无奇的求和公式,对A1:E6求和:
=SUM(A1:E6)

用LAMBDA改进:
=LAMBDA(x,SUM(x))(A1:E6)
LAMBDA定义了一个参数x,定义了一个计算,对x求和,最后将A1:E6传递给x,最终效果就是对A1:E6求和

上述公式的外面包一个BYROW:
=BYROW(A1:E6,LAMBDA(x,SUM(x)))
第一参数A1:E6是要参与运算的数组,第二参数是LAMBDA表达式。
LAMBDA的参数和计算定义不变,A1:E6被传递给x作为SUM的求和对象,不同的是BYROW会让LAMBDA按行执行求和,每行都会产生一个求和结果,最终形成一个数组返回。

改为BYCOL则按列执行求和:
=BYCOL(A1:E6,LAMBDA(x,SUM(x)))

案例:提取平均数据前三名
=TAKE(SORTBY(A2:D8,BYROW(B2:D8,LAMBDA(x,AVERAGE(x))),-1),3)
其中BYROW+LAMBDA+AVERAGE组合部分实现按行统计平均值,返回一个数组作为SORTBY排序的依据,排序后用TAKE提取前三。

案例:合并文本
=TEXTJOIN(CHAR(10),1,BYROW(A2:C8,LAMBDA(x,TEXTJOIN(",",1,x))))BYROW+LAMBDA+TEXTJOIN部分实现按行合并文本,外层TEXTJOIN在此基础上再次合并,以换行符间隔。

推荐阅读:lambda函数有什么作用? Excel中LAMBDA函数使用详解和相关案例
相关文章

支持语法糖! Excel函数BYROW与BYCOL的使用指南
最近微软更新了辅助函数的书写规则,支持语法糖,可以简写了,今天我们就来看看excel中新函数BYROW与BYCOL的使用方法2025-09-03
Excel中利用FILTER和BYROW函数实现多列重复值查找的实例教程
我们使用XLOOKUP函数配合相关函数实现了在任意列查找某值返回同一行中对应列中的值,该怎么操作呢?详细请看下文介绍2025-09-03
表格转换不翻车! excel中filter筛选函数行列互换的技巧
excel表格中经常需要将数据进行行列转换的,该怎么操作呢?今天我们用filter筛选函数操作,详细如下文所述2025-08-28
传统筛选点到手抽筋? excel中FILTER函数让你告别手动筛选的烦恼
今天要给大家介绍一个超级好用的函数——FILTER!它能让你的数据筛选工作从石器时代直接飞跃到智能时代,详细请看下文案例2025-08-28
根据相似度做匹配! Excel超级筛选函数REGEXEXTRACT来了
学会在Excel中实现相似度匹配,真的太有用了!特别是用Power Query,操作简单又高效,但是wps用不了,我们可以用别的函数实现2025-08-26
今天跟大家分享的是Excel中的一个神奇函数——N函数,别看它只有一个字母N,但是有时它的用途却特别大,详细请看下文介绍2025-08-26
可惜99.9%的人没用过! Excel中万能统计函数AGGREGATE使用指南
在EXCEL数据统计的时候,不可避免的会遇到错误值,而错误值的出现,往往影响到数据的进一步计算,今天,就给大家分享一个忽略错误值计算的万能函数——AGGREGATE2025-08-12
行列转换再也不烧脑! excel中WRAPROWS函数2个参数就轻松解决
excel表格中的内容很乱,想要实现每10行内容变成一行多列内容,该怎么进行行列转换呢?我们只需要用到WRAPROWS函数进行转换,详细如下2025-08-11
一行轻松变多行! 一文看懂excel中WRAPCOLS和WRAPROWS函数
excel中想要将一行或者一列转换成多行多列,我们可以使用函数轻松实现,今天我们来介绍WRAPCOLS和WRAPROWS函数的应用2025-08-11
不会用IF函数? 一文讲透excel中if函数使用方法全解析
I和F两个英文字母你可能认识,I和F组成的IF函数,你不一定会用它,小小的两个英文字母,其功能却是强大的2025-07-17




最新评论