能否使用ARRAYFORMULA实现自动填充A列上一非空值?
用ARRAYFORMULA实现自动填充上一非空行值(无循环引用)
可以实现,以下是无循环引用的解决方案:
在B1单元格输入以下公式,整列将自动生效,插入新行无需手动拖动:
=ARRAYFORMULA(IF(ROW(A:A)=1,"上一填充值",IF(A:A="","",INDEX(A:A,IFERROR(MATCH(2,1/(A$1:A1<>""),1),1)))))
公式逻辑说明
ARRAYFORMULA:让公式作用于A、B列所有行,无需逐行拖动- 第一行判断:为B列设置表头“上一填充值”
- 空值判断:若A列当前行无内容,B列对应位置留空
- 非空行处理:通过
MATCH(2,1/(A$1:A1<>""),1)定位当前行之前最后一个非空的A列行,再用INDEX提取该行的A列值,完全避免循环引用触发
效果验证
插入新行后,只要在A列输入内容,B列会自动匹配上一个已填充的A列值,全程无需手动操作公式。
内容的提问来源于stack exchange,提问作者Evgeny
相关产品推荐
相关产品推荐

