Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel高级多条件公式_Excel_If Statement - Fatal编程技术网

Excel高级多条件公式

Excel高级多条件公式,excel,if-statement,Excel,If Statement,我需要在Excel中使用多个条件编写IF 基本上,我需要excel返回以下内容: 如果CR2=>2,CI2=>2,CH2=>2,它应该返回1 如果CR2=>2且CI2=>2且CH2=1,则应返回2 如果CR2=>2且CI2=1且CH2=>2),则应返回2 如果CR2=>2且CI2=1且CH2=>1,则应返回3 如果CR2=1,CI2=1,CH2=1,则应返回4 我一直试图纠正这个错误,但没有成功,我认为问题可能是因为我不知道如何纠正这种情况下的错误陈述 任何帮助都将不胜感激。谢谢大家! 您可以制

我需要在Excel中使用多个条件编写IF

基本上,我需要excel返回以下内容:

如果CR2=>2,CI2=>2,CH2=>2,它应该返回1

如果CR2=>2且CI2=>2且CH2=1,则应返回2

如果CR2=>2且CI2=1且CH2=>2),则应返回2

如果CR2=>2且CI2=1且CH2=>1,则应返回3

如果CR2=1,CI2=1,CH2=1,则应返回4

我一直试图纠正这个错误,但没有成功,我认为问题可能是因为我不知道如何纠正这种情况下的错误陈述


任何帮助都将不胜感激。谢谢大家!

您可以制作一个大的、丑陋的、嵌套的IF-AND语句,然后找出如何处理其他可能的场景(除非它们不会发生在您的数据中)


这可能适用于您,但您可能会遇到多个条件为真的情况。无论如何,如果你能完全找出每一种可能的组合,这是一种简洁的方式来写这句话

=AND(CR2>=2,CI2>=2,CH2>=2)*1 + AND(CR2>=2,CI2>=2,CH2=1)*2 + AND(CR2>=2,CI2=1,CH2>=2)*2 + AND(CR2>=2,CI2=1,CH2>=1)*3 + AND(CR2=1, CI2=1, CH2=1)*4 

下面的公式将根据您的要求给出结果

=IF(AND(CR2 >= 2, CI2 >= 2, CH2 >= 2), 1, IF(AND(CR2 >= 2, CI2 >= 2, CH2 = 1), 2, IF(AND(CR2 >= 2, CI2 = 1, CH2 >= 2), 2, IF(AND(CR2 >=2, CI2 = 1, CH2 >= 1), 1, IF(AND(CR2 = 1, CI2 = 1, CH2 = 1), 4,)))))

有更多可能的组合,那么这些组合呢?或者它们是唯一可能的组合吗?这些是唯一可能的组合。如果不满足这些条件,应该返回什么?(即使不应该这样,从编程的角度来看,也应该始终考虑这一点。您可以使用NA()或ERROR().=和(CR2>=2,CI2>=2,CH2>=2)*1+和(CR2>=2,CI2>=2,CH2=1)*2+和(CR2>=2,CI2=1,CH2>=2)*2+和(CR2>=2,CI2=1,CH2>=1)*3+和(CR2=1,CI2=1,CH2=1)*4-这可能对你有用,但你可能会遇到多个条件为真的情况。无论如何,如果你能完全找出每一个可能的组合,这是一种简洁的方式来编写语句。为什么感觉条件3和4需要工作?CH2=>1真的需要读取CH2=1?如果你发现自己需要8+,请注意这里条件。如果没有弄错的话,嵌套超过8级的If语句是不可能的。这一点很好。我还忘记了IFS(),我认为它更容易阅读,但我不确定它是否在旧版本的Excel中可用。
=IF(AND(CR2 >= 2, CI2 >= 2, CH2 >= 2), 1, IF(AND(CR2 >= 2, CI2 >= 2, CH2 = 1), 2, IF(AND(CR2 >= 2, CI2 = 1, CH2 >= 2), 2, IF(AND(CR2 >=2, CI2 = 1, CH2 >= 1), 1, IF(AND(CR2 = 1, CI2 = 1, CH2 = 1), 4,)))))