首页 > 解决方案 > 在ms excel中计算整行中连续值序列的数量

问题描述

在此处输入图像描述

我的excelsheet就像上面一样,

我想计算整行中连续非空序列的数量,结果应该在列(L)中。

例如,从 A2:K2 共有 3 个连续的非空序列,因此在 L2 列中,所有其他行的答案应该是 3。

请帮我编写excel公式以获得列(L)中的结果。

标签: excelms-office

解决方案


频率:

 =SUMPRODUCT(--(FREQUENCY(IF(INDEX(A2:K2,MATCH(1,A2:K2,0)):INDEX(A2:K2,MATCH(1E+99,A2:K2))=1,COLUMN(INDEX(A2:K2,MATCH(1,A2:K2,0)):INDEX(A2:K2,MATCH(1E+99,A2:K2)))),IF(INDEX(A2:K2,MATCH(1,A2:K2,0)):INDEX(A2:K2,MATCH(1E+99,A2:K2))=1,"",COLUMN(INDEX(A2:K2,MATCH(1,A2:K2,0)):INDEX(A2:K2,MATCH(1E+99,A2:K2)))))>0))

在此处输入图像描述

使用 Office 365,我们可以使用 LET 来缩短:

=LET(x,A2:K2,rng,INDEX(A2:K2,MATCH(1,A2:K2,0)):INDEX(A2:K2,MATCH(1E+99,A2:K2)),SUMPRODUCT(--(FREQUENCY(IF(rng=1,COLUMN(rng)),IF(rng=1,"",COLUMN(rng)))>0)))

推荐阅读