返回基于三个不同范围的值

时间:2017-10-02 14:20:05

标签: excel excel-formula

我正在尝试让列H在SV,D或E列中填充C,D,E列中的一系列值。

如果C介于270-​​300之间,D介于3-5之间,且E介于900-2000之间,则在H列中返回SV值。

如果C介于300-375之间,D介于3-5.2之间,且E介于900-1700之间,则在H列中返回LV值。

如果C介于375-420之间,且D介于5.3-7.9之间,且E介于900-1700之间,则在H列中返回DS值。

我尝试过嵌套的IF AND语句,但我似乎无法做到正确。我很乐意在VBA中这样做,如果那会更好。谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

你也可以尝试这个公式。

=IF(AND(C1>=230,C1<300,D1>=3,D1<5,E1>=900,E1<2000),"SV",IF(AND(C1>=300,C1<375,D1>=3,D1<5.2,E1>=900,E1<1700),"LV",IF(AND(C1>=375,C1<420,D1>=5.3,D1<7.9,E1>=900,E1<1700),"DS","na")))

enter image description here

答案 1 :(得分:0)

在这里,我有一种更动态的方法来使用INDEXSUMPRODUCT来获得您想要的结果。

我从cell H2输入的公式是:

=IFERROR(INDEX($P$2:$P$4,SUMPRODUCT(--(C2>=$J$2:$J$4)*--(C2<=$K$2:$K$4)*--(D2>=$L$2:$L$4)*--(D2<=$M$2:$M$4)*--(E2>=$N$2:$N$4)*--(E2<=$O$2:$O$4)*(ROW($P$2:$P$4)-1))),"")

这样做是为了使用SUMPRODUCT来匹配条件,然后使用INDEX来检索相应的结果。您可以尝试看看这是否适合您。