为什么我收到的返回结果是 FALSE?

为什么我收到的返回结果是 FALSE?

目标单元格中​​始终出现 FALSE。我觉得我已经尝试了所有方法,但似乎找不到错误。

  =IF(AND(K2<=2014,G2<=36),
     IF(AND(K2<=2015,G2>=48),
       IF(AND(K2>=2016,G2>=60),
         IF(AND(K2<=2017,G2>=72),
           IF(AND(K2<=2018,K2>=2020,G2>=84),
             IF(AND(K2<=2021,K2>=2023,G2>=96),
               IF(D2<7500,"-D",IF(D2<20000,"-l",
                 IF(D2<30000,"-k",IF(D2<40000,"-j",
                   IF(D2<50000,D2*0.0025,
                     IF(D2>=50000,D2*0.0025)))))))))))

IF/AND 语句是“车型年份”(K2)和“贷款期限”(G2),如果语句返回 TRUE,则转到常规 IF 并计算奖金金额(D2)。

答案1

你没有成功之路。

一旦代码以更易读的方式布局,就会清楚地看到,一旦任何 IF 条件变为 TRUE,您就会提供另一个将返回 FALSE 的测试,而不是提供成功路径。

解释

  • 你的第一个测试是IF(AND(K2<=2014,G2<=36),value_if_true)
  • 如果测试结果为 FALSE,则表示您没有提供其他值,因此结果为 FALSE;
  • 如果测试结果为 TRUE,则 value_if_true 为IF(AND(K2<=2015,G2>=48),value_if_true)
  • 再次,如果下一个测试为 FALSE,则您没有提供另一个值,因此为 FALSE;
  • 最后一个测试必然是错误的,因为AND(G2<=36,G2>=48)=FALSE

因此,如果第一个条件测试为 FALSE,则结果为 FALSE。如果恰好为 TRUE,则第二个条件的结果始终为 FALSE。

相关内容