需求:日期已设置且金额非零时自动递增A列的Array Formula
实现自动递增序号的数组公式
没问题,我帮你写一个适配需求的Google Sheets数组公式,直接粘贴到对应单元格就能用:
=ARRAYFORMULA(IF((B2:B<>"")*(D2:D<>0), COUNTIFS(ROW(B2:B), "<="&ROW(B2:B), B2:B, "<>", D2:D, "<>0"), ""))
公式说明:
ARRAYFORMULA:让公式一次性作用于整个列,不用手动下拉填充,自动覆盖后续行。IF((B2:B<>"")*(D2:D<>0), ..., ""):判断当前行的「日期列(B列)」不为空,且「金额列(D列)」数值不为0;满足条件就生成序号,不满足则留空。这里用*代替逻辑AND,是因为数组环境下AND无法直接生效。COUNTIFS(...):统计从第2行到当前行中,同时满足「日期不为空」和「金额不为0」的总行数,以此生成连续递增的序号。
使用方法:
- 确保你的表格表头是:A列「序号」、B列「日期」、C列「描述」、D列「金额」(和截图结构一致)。
- 清空A列除了表头(A1)以外的所有内容。
- 把上面的公式粘贴到A2单元格,回车后就会自动生效。
内容的提问来源于stack exchange,提问作者Vladimir Melnikov
相关产品推荐
相关产品推荐

