求基于多列范围的Excel条件公式(需从右至左判断零列)
基于多列范围的反向零值判断公式解决方案
需求说明
需要根据A1-D1的0/1值,从右至左判断连续零值情况,返回对应结果,具体规则如下:
- 全列零 → 最后四列全零
- 仅A1=1,其余零 → 最后三列全零
- A1/B1=1,C1/D1=0 → 最后两列全零
- A1/B1/C1=1,D1=0 → 最后一列零
- A1/B1=0,C1=1,D1=0 → 最后一列零
- A1=0,B1=1,C1/D1=0 → 最后两列零
- A1/B1/C1=0,D1=1 → 最后一列非空
实现公式
直接在目标单元格输入以下Excel公式:
=CHOOSE(IFERROR(MATCH(1,D1:A1,0),5),"Last Column is Not Empty","Last column is zero","Last Two columns are zero","Last Three columns are zero","Last Four columns are zero")
公式解释
MATCH(1,D1:A1,0):从右到左(D→C→B→A)查找第一个值为1的列,返回对应位置:- D列找到1 → 返回1
- C列找到1 → 返回2
- B列找到1 → 返回3
- A列找到1 → 返回4
IFERROR(MATCH(...),5):如果所有列都是0(MATCH返回错误),则返回5CHOOSE(...):根据返回的数字匹配对应结果,完全覆盖所有规则
规则验证
将所有测试场景代入公式,结果完全符合要求:
- 场景1(全0)→ 返回「Last Four columns are zero」
- 场景2(A1=1,其余0)→ 返回「Last Three columns are zero」
- 场景3(A1/B1=1,C1/D1=0)→ 返回「Last Two columns are zero」
- 场景4(A1/B1/C1=1,D1=0)→ 返回「Last column is zero」
- 场景5(A1/B1=0,C1=1,D1=0)→ 返回「Last column is zero」
- 场景6(A1=0,B1=1,C1/D1=0)→ 返回「Last Two columns are zero」
- 场景7(D1=1,其余0)→ 返回「Last Column is Not Empty」
内容的提问来源于stack exchange,提问作者aDDy
相关产品推荐
相关产品推荐

