Excel IF函数读取的非数字值大于数字

时间:2018-09-26 00:32:51

标签: if-statement excel-formula

我正在尝试使用以下公式从回归的斜率(X1)和截距(X2)计算残差。但是,我遇到了一个问题,当X6中存在非数字值(例如N / A)时,IF函数将返回``0''。换句话说,N / A被解释为小于数值,这会产生误导作用...

=IF(X6>=((X1*E6)+X2),"1","0")

我想念什么?我希望使用>=时,非数值会返回错误。

我试图嵌套IF函数来解决此问题(=(IF(X6=N/A, "N/A",IF(X6>=((X1*E6)+X2),"1","0")的变体),但是无法使其正常工作。

更新:现在我尝试了= IF(AND(ISNUMBER(X6),X6> =(X1 * E6)+ X2),1,0),结果相同-即使X6具有N / A或为空,仍返回0。 因此,当任一条件为假时,它都将返回0(如果不是数字或小于第二个条件),但我需要它仅在小于第二个条件的数字时才返回0,并返回一个如果参考单元格包含文本,则为N / A或其他错误。我该如何指定呢?

请帮助!

2 个答案:

答案 0 :(得分:0)

假设N/A是文本...

Excel正在进行二进制比较。用二进制的话,您可以说服自己,N / A确实大于您使用简单的在线转换器可能要使用的数字。


要解决此缺点,请确保将数字与带有ISNUMBER的数字进行比较。

=IF(AND(ISNUMBER(X6),X6>=(X1*E6)+X2),1,0)

答案 1 :(得分:0)

好的,我得到了我想要的东西:

= IF(ISNUMBER(X6),IF(X6> =(X1 * E6)+ X2,1,0))

如果X6中没有数值,则返回FALSE,然后第二条语句为具有数值的单元格返回0或1。