Excel新函数BYROW,逐行运算竟然如此简单高效!

醉香说职场 2024-12-23 22:48:47

我是【桃大喵学习记】,欢迎大家关注哟~,每天为你分享职场办公软件使用技巧干货!

——首发于微信号:桃大喵学习记

上周跟大家分享多表格数据合并时提到过BYROW函数,Excel新BYROW函数,它允许对数据表的每一行执行相同的操作,返回结果数组。与LAMBDA结合,处理复杂任务如虎添翼,让数据处理变得轻松愉快。

BYROW函数介绍

功能:将LAMBDA函数应用于每行并返回结果的数组。

语法:=BYROW(数组,[函数])

上面的功能和语法介绍可能大家觉的比较抽象,不容易理解,下面通过应用实例跟大家分享一下基本用法。

实例一:计算时只需一个参数就可以运算

如下图所示,左侧是不同店铺1-3月份的销售额,我们需要汇总每个店铺1季度的销售总额

只需在目标单元格中输入公式:

=BYROW(B2:D5,SUM)

然后点击回车即可

解读:

公式就是对B2到D5这个区域内每一行的数据进行求和操作。最终,这个公式会返回一个新的数组,包含了每一行的求和结果。

当然,我们除了对每行求和,还可以统计1季度中3个月销售最大值和最小值等。

1、计算最大值公式

=BYROW(B2:D5,MAX)

2、计算最小值公式

=BYROW(B2:D5,MIN)

总结,上面的实例都是只需要一个参数就可以运算,比如说SUM、MAX、MIN,不需要多余的其它参数,直接使用简写方式,写函数名称不用带函数括号就可以。我们从最上面BYROW函数介绍中可以看到,它是将LAMBDA函数应用于每行并返回结果的数组。

其实,完整的写法是这样的:

1、计算求和公式:

=BYROW(B2:D5,LAMBDA(X,SUM(X)))

2、计算最大值公式

=BYROW(B2:D5,LAMBDA(X,MAX(X)))

3、计算最小值公式

=BYROW(B2:D5,LAMBDA(X,MIN(X)))

解读:

①上面3个完整公式都是使用了LAMBDA函数,它不仅可以通过定义名称制作自定义函数,也可以用在很多函数的参数里。

语法:=LAMBDA(参数或计算,参数或计算1,参数或计算2...参数或计算)

②上面的公式中,X是LAMBDA自定义函数的参数,它把B2:G4的每一行值传递到SUM(X)、MAX(X)、MIN(X)里进行运算。

当然,如果我们是具体场景中如果只需要一个参数就可以运算,那么,我们就可以使用简写方式,只写函数名称即可。

实例二:计算时需要多个参数才可以运算

如下图所示,我们需要计算每个店铺在第1季度销量大于6000的月份个数。

只需在目标单元格中输入公式:

=BYROW(B2:D5,LAMBDA(X,COUNTIF(X,">6000")))

然后点击回车即可

解读:

在上的公式中,需要用到COUNTIF函数统计大于6000的个数,COUNTIF函数需要多个参数,所以这种情况下就不能使用简写格式,就必须结合LAMBDA函数来使用。

实例三:综合应用(获取销量第2名)

如下图所示,获取销量前2名的店铺名称

只需在目标单元格中输入公式:

=TAKE(SORT(HSTACK(A2:A5,BYROW(B2:D5,SUM)),2,-1),2,1)

然后点击回车即可

解读:

①先使用BYROW(B2:D5,SUM),获取各个店铺销售总额;

②接着使用HSTACK函数将店铺名称和销量合计合并成新数组;

③然后再使用SORT函数对新数值按销量总和降序排序;

④最后用TAKE函数获取排序后的第一列(店铺姓名列)前2行数据。

以上就是【桃大喵学习记】今天的干货分享~觉得内容对你有所帮助,别忘了动动手指点个赞哦~。大家有什么问题欢迎关注留言,期待与你的每一次互动,让我们共同成长!

4 阅读:91