计算一行中最近连续的非空白列

计算一行中最近连续的非空白列

例子

我需要计算特定行中最近连续的非空白单元格的数量。例如,在附图中,它将是 1,因为最新一周中有字母,但前一周没有。

此公式需要可编辑,以包含添加到末尾的新周数。

答案1

以下是一个答案:

=COLUMNS(O51:R51)-IFNA(XMATCH(,O51:R51,0,-1),0)

分解如下:

COLUMNS():获取“搜索”数组中的总列数

-:从 ifna(xmatch()) 中减去总列数(如下)

IFNA():如果 xmatch 错误,使用什么数字

XMATCH():以相反的顺序查找第一个空单元格(-1 参数) 

注意,用 包装LET只允许更新一个范围,而不是两个。

在此处输入图片描述

答案2

REDUCE 方法

=REDUCE(,INDEX(NOT(ISBLANK(O51:R51))), LAMBDA(a,v, (a+1)*v))

文本连接/文本分割

=IFERROR(TAKE( LEN( TEXTSPLIT( TEXTJOIN(,,ISBLANK(O2:Z2)/1),1,,1)),1,-1),"")

TEXTJOIN/TEXSPLIT 多行

=BYROW(O2:Z50, LAMBDA(r, IFERROR(
   TAKE( LEN( TEXTSPLIT( TEXTJOIN(,,ISBLANK(r)/1),1,,1)),1,-1),"")))

相关内容