在同一公式中使用IF和IF AND

时间:2018-12-23 12:43:50

标签: excel-formula

我认为我的sytanx是正确的,但是我不能在同一公式中使用IF和AND IF语句。您知道可能是什么问题吗?

= IF(K47> 170,“ BAD”,IF(K47 <100,“ GOOD”),IF(AND(J47 = 0,I47> 160,“ BAD”)

2 个答案:

答案 0 :(得分:0)

在excel中,如果是(布尔语句,正确结果,错误结果) 并只返回true或false。您不能有字符串值。 因此,并且应该抛出一个错误,因为“ BAD”不能被评估为真或假 最后一个if应该抛出错误,因为有足够的参数(需要三个参数)。 此外,您没有足够的约束公式。

所以你应该有类似的东西

= if(K47> 170,“ Bad”,if(k47 <100,“ Good”,if(AND(J47 = 0,I47> 160),“ BAD”,“ SOMETHING”)))

答案 1 :(得分:0)

将其分解成较小的块可以隔离问题。未测试,因为我没有excel,但编写公式如下

  =IF(
    K47>170,
    "BAD",
    IF(
        K47<100,
        "GOOD")

^^好像您在这里丢失了某些东西,因为如果未指定最里面的else部分,则该语句应在此处用)结束,这意味着excel无法弄清楚其余部分该怎么做(如下)。

,IF(AND(J47=0,I47>160,"BAD")

这部分也有一个非常奇怪的条件。似乎您想说“如果j47等于0而I47大于160”。

如果需要,使用伪代码

if k47 > 170
    bad
else
    if k47 < 100
        good
    else
        if j47 = 0 and I47 > 160
            bad
        else
            good
    end
end

然后您可以使用excel之类的东西编写它

=IF(
    K47 > 170,
    "BAD",
    IF(
        K47 < 100,
        "GOOD",
        IF(
            AND(
                J47 = 0,
                I47 > 160
            ),
           "BAD",
           "GOOD"
        )
    )
)

尝试一下,随时查看excel公式指南,一次求解一个。