我目前有一个公式可以计算 C 列及以后的非空白单元格的数量。
=BYROW(C3:3,LAMBDA(x,COUNTIFS(x,">""")))
这适用于单个单元格。我想做的是让这个公式计算 A 列中有值的下面的任何行。例如,如果 A 列在 100 行处是静态的,我可以执行以下操作...
=BYROW(C3:100,LAMBDA(x,COUNTIFS(x,">""")))
这将有助于填充直到第 100 行的所有单元格的计算。但是如果它不是静态的怎么办?如果 A 列是动态的怎么办?如何用动态最后一行号替换 100?
编辑:我已经更接近以下公式了......
=BYROW(INDIRECT("C3:"&ROWS(A:A)),LAMBDA(x,COUNTIFS(x,">""")))
我遇到的问题是,它将继续为 A 列中没有值的单元格提供值
0
。
我设法弄清楚了这一点。这是我最终为感兴趣的人使用的。
=BYROW(INDIRECT("C3:"&ROWS(A:A)),LAMBDA(x,IF(INDIRECT("A"&ROW(x))="","",COUNTIFS(x,">"""))))
我不确定是否有更清洁或更有效的替代方案,但这似乎可以实现我所需要的。