Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/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
多IF和excel语句_Excel_Formula - Fatal编程技术网

多IF和excel语句

多IF和excel语句,excel,formula,Excel,Formula,我正试图写一个公式,结果却出错了。逻辑是: If A1 > 0 and B1 = "PEN" Output = "Refund 1" If A1 > 0 and B1 = "INT" Output = "Refund 1" If A1 > 0 and B1 = "ADM" Output = "Refund 1" If A1 > 0 and B1 = "AB" Output = "Refund 2" If A1 < 0 and B1 = "PEN"

我正试图写一个公式,结果却出错了。逻辑是:

If A1 > 0 and B1 = "PEN"   Output = "Refund 1"
If A1 > 0 and B1 = "INT"   Output = "Refund 1"
If A1 > 0 and B1 = "ADM"   Output = "Refund 1"
If A1 > 0 and B1 = "AB"    Output = "Refund 2"
If A1 < 0 and B1 = "PEN"   Output = "Fund 1"
If A1 < 0 and B1 = "INT"   Output = "Fund 1"
If A1 < 0 and B1 = "ADM"   Output = "Fund 1"
If A1 < 0 and B1 = "AB"    Output = "Fund 2"
我在写乘法If语句时出错


有人能帮忙吗

这对你有用

=IF(AND(A1>0,OR(B1="PEN",B1="INT",B1="ADM")),"Refund 1",IF(AND(A1>0,B1="AB"),"Refund 2",IF(AND(A1<0,OR(B1="PEN",B1="INT",B1="ADM")),"Fund 1",IF(AND(A1<0,B1="AB"),"Fund 2"))))

虽然@Jeanno的答案适用于这种情况,但我想指出的是,使用查找表可以更普遍地完成同样的事情

蓝色项目为硬编码,黑色为公式

这样做有几个好处:

可扩展性:如果您的标准突然从测试两个条件增长到3个或更多,那么if样式语句将从几乎难以辨认变为完全难以辨认。 清除:通过查找表上的值,任何人都可以知道为什么要将一行指定给结果。尝试使用Excel的嵌套AND语句来实现这一点,或者,如果语句非常困难的话。 浓缩版本:=IFORB1={PEN,INT,ADM},IFA1>0,退款1,基金1,IFB1=AB,IFA1>0,退款2,基金2,