如何将=Row()-1改写为可正常生效的Arrayformula数组公式
问题原因
你编写的=Arrayformula(Row()-1)无法生效的核心原因是:单独调用ROW()函数且未指定作用范围时,只会返回公式所在单元格的行号,无法生成可扩展的数组结果。
可用解决方案
根据你的使用场景可以选择以下写法:
- 场景1:指定固定范围生成连续序号
比如你需要在A2到A100区间生成1~99的连续序号,直接指定ROW函数的作用范围即可:=ARRAYFORMULA(ROW(A2:A100)-1) - 场景2:整列自适应生成序号,仅参考列有内容时显示序号
避免整列填充冗余数据,参考列可以自行替换为你实际业务中用于判断行是否有效的列,示例中以A列为参考:=ARRAYFORMULA(IF(A:A<>"",ROW(A:A)-1,"")) - 场景3:整列生成0开头的连续序号
不需要判断空行,直接从A1开始返回0、1、2……的连续值:=ARRAYFORMULA(ROW(A:A)-1)
内容的提问来源于stack exchange,提问作者Captain_D
相关产品推荐
相关产品推荐

