首页 > 解决方案 > Excel 多个 If 语句显示 False

问题描述

我有这个 IF 声明:

=IF(AG3<=7,"1",IF(15<=AG3<=21,"2",IF(22<=AG3<=28,"3",IF(29<=AG3<=35,"4",IF(36<=AG3<=42,"5",IF(43<=AG3<=49,"6",IF(50<=AG3<=56,"7")))))))

但它要么给我一个 1 要么“假”

所有值都在范围内,应显示各种数字

标签: excelif-statement

解决方案


Excel 不使用50<=AG3<=56. Excel 将读取此内容的方式是它将解析AG3<=56哪个将解析为TRUEFALSE分别具有 和 的10。并且由于 50 大于它们将始终返回的值FALSE,并且由于您没有指定最终的错误参数 Excel 返回FALSE

它需要是AND(50<=AG3, AG3<=56)

"1"返回一个数字作为文本而不是一个真实的数字,删除引号。

所以:

=IF(AG3<=7,1,IF(AND(15<=AG3,AG3<=21),2,IF(AND(22<=AG3,AG3<=28),3,IF(AND(29<=AG3,AG3<=35),4,IF(AND(36<=AG3,AG3<=42),5,IF(AND(43<=AG3,AG3<=49),6,IF(AND(50<=AG3,AG3<=56),7,"Value not in specs")))))))

但根据您的标准,您可以使用:

=IF(OR(AND(AG3>=8,AG3<=14),AG3>56),"Not to Spec",MATCH(AG3,{-1E+99,15,22,29,36,43,40}))

推荐阅读