Excel 2016使用IF、AND、OR编写多条件PASS/FAIL判定公式问题
Excel电阻合格判定公式修正方案
需求可行性说明
该需求完全可以在Excel中实现,你之前返回错误结果是因为公式的括号嵌套顺序、IF和OR函数的参数位置错误,导致逻辑返回布尔值而非预期的PASS/FAIL文本。
正确通用公式(兼容所有Excel版本)
=IF(OR(ISBLANK(F7),ISBLANK(G7)),"",IF(OR(AND(OR(F7>10000000,F7="OL"),G7=$C$84),AND(OR(F7>10000,F7="OL"),G7=$C$85),AND(OR(F7>10,F7="OL"),G7=$C$86)),"PASS","FAIL"))
你提到的$C$84=ohms、$C$85=kohms、$C$86=Mohms的取值无需修改,直接套用即可。
公式逻辑说明
- 第一层判断:F7(电阻数值)或G7(单位)任意为空时返回空值,避免无意义的错误结果
- 第二层判断:三个合格条件满足任意一个即返回PASS,否则返回FAIL:
- 单位为ohms时,数值大于10000000或显示OL(超量程)
- 单位为kohms时,数值大于10000或显示OL(超量程)
- 单位为Mohms时,数值大于10或显示OL(超量程)
如果使用Excel 365/2021及以上版本,也可以用更简洁的IFS写法,逻辑可读性更强:
=IF(OR(ISBLANK(F7),ISBLANK(G7)),"",IFS(AND(OR(F7>10000000,F7="OL"),G7=$C$84),"PASS",AND(OR(F7>10000,F7="OL"),G7=$C$85),"PASS",AND(OR(F7>10,F7="OL"),G7=$C$86),"PASS",TRUE,"FAIL"))
内容的提问来源于stack exchange,提问作者Brandon Yarosz
相关产品推荐
相关产品推荐

