如何使用ArrayFormula编写从0开始的非空单元格计数公式?
实现从0开始的非空单元格连续计数(ArrayFormula版)
需求对应公式
假设要检查的目标单元格范围是A1:A(可根据实际需求修改范围),在相邻列输入以下公式即可实现需求:
=ArrayFormula(IF(A1:A="", "", COUNTIFS(A1:A, "<>", ROW(A1:A), "<="&ROW(A1:A)) - 1))
公式逻辑说明
- 空单元格处理:通过
IF(A1:A="", "", ...)判断目标单元格是否为空,为空则返回空值,避免空行生成无效计数。 - 非空单元格计数:
COUNTIFS(A1:A, "<>", ROW(A1:A), "<="&ROW(A1:A))统计当前行及以上所有非空单元格的数量。 - 从0开始计数:将统计结果减1,把原本从1起始的计数转换为0起始。
对应示例效果
| 目标列(A) | 计数列(B,公式生成) |
|---|---|
| a | 0 |
| a | 1 |
| (空) | (空) |
| a | 2 |
| a | 3 |
| (空) | (空) |
| a | 4 |
内容的提问来源于stack exchange,提问作者icecream sugar black
相关产品推荐
相关产品推荐

