ARTICLE · 1005519
一组高效Excel动态数组公式,请收好
一组高效Excel动态数组公式,请收好小伙伴们好啊,今天和大家分享一组简单高效的Excel函数公式,点滴积累,也能提高工作效率。 1、每列最大值求和 如下图,希望计算每个人的最高成绩之和。 H2输入以下公式: =SUM(BYCOL(B2:F6,LAMBDA(x,MAX(x)))) 
LAMBDA函数将B2:F6区域中的每一列定义为x,再用MAX函数分别计算出x的最大值。 也可以简化LAMBDA部分,写成语法糖的形式: =SUM(BYCOL(B2:F6,MAX)) 

3、按指定次数重复显示 如下图所示,希望根据B列的次数来重复显示A列标签内容。 C2单元格输入以下公式: =TEXTSPLIT(CONCAT(REPT(A2:A8&"/",B2:B8)),,"/",1) 
A2:A8&"/"部分,先将A2:A8单元格中的每一项分别与斜杠进行连接,再用REPT函数,根据B列的数字来重复显示这些内容。 接下来使用CONCAT函数将这些内容连接到一起: "半成品区/半成品区/半成品区/原料区/原料区/原料区/……/暂存区/" 最后使用TEXTSPLIT函数,以斜杠为间隔符号,将以上字符串进行拆分。

2、计算最多连胜次数
如下图所示,B列是某联赛的比赛成绩,希望计算出最多连胜场次。
=MAX(LEN(TEXTSPLIT(CONCAT(IF(B2:B12="胜",1,0)),0)))

IF函数部分,判断B列胜负,胜返回1,负返回0。如下图所示。

接下来使用CONCAT函数将这些内容连接到一起,结果为:
“00111001011”
再使用TEXTSPLIT函数,用0作为间隔符进行拆分,拆分结果为:
……111…1…11
最后用LEN函数计算出以上结果的字符数,再用MAX函数计算出最多的字符数,其结果就是最大连胜次数。
