Excel在IF函数上一起使用AND和OR

时间:2016-09-09 07:28:44

标签: excel-formula

我有一个问题,我无法弄清楚如何解决。目前我在excel中解决这个问题,但最终还是使用了sql。

我们有一项调查,意味着在结算金额达到时运行;

•首先触发$ 50k,然后$ 150,然后$ 250。

Sample Data

'最后一次运行'是调查上次运行时的当前价值'是当前的结算金额。

因此,对于第1行,当收费金额为55000时,调查最后一次运行,现在是160000,大于150K的阈值,因此应该进行调查,因此它应该返回“真实”。

第2行:也是如此,因为当前值大于'最后一次运行并且'>> = 150K 第3行:也是如此,因为它已超过150K的阈值 第4行:应该返回false,因为在上次运行和当前值之间没有任何阈值通过。

如果 CurrentValue> =上次运行 并且当前值> = 50K或150K或250K

然后' True'其他错误

我们将从此返回的真假判决中启动调查。

数据仅为样本数据,当前和上次运行的值可以更改,但触发量将保持不变。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

我这样理解你的问题:

  

您想要计算检查上次运行值的哪个触发器,以及哪个触发器检查当前值,如果它们不同并且当前值大于上次运行然后我们需要再次运行调查(返回TRUE),否则我们不会(返回FALSE)。

如果上述理解不正确,请告诉我。

为了计算这个,我只需构建一个IF语句表达式来确定上次运行使用哪个触发器,当前值相同,并比较它们。< / p>

以下是两个公式:

  • =IF(A2>=250000;3;IF(A2>=150000;2;IF(A2>=50000;1;0)))
  • =IF(B2>=250000;3;IF(B2>=150000;2;IF(B2>=50000;1;0)))

然后我们需要把它们放在一起,所以这是最终的公式:

=AND(
    IF(A2>=250000;3;IF(A2>=150000;2;IF(A2>=50000;1;0)))
    <>IF(B2>=250000;3;IF(B2>=150000;2;IF(B2>=50000;1;0)))
    ;B2>A2)

(删除换行符并将它们放在一条长行上)