使用VLOOKUP获得下一个较低的值

时间:2017-05-18 08:28:04

标签: excel

我有以下Excel电子表格:

        A          B                 C                 D
1    15.000     Product 1          7.500           Product 2
2     5.000     Product 2
3     1.000     Product 3
4         0     Product 4
5

Cell C1 中,我输入一个随机数(在本例中为7.500)。现在我想在 Cell D1 中将相应的Product显示为 Cell C1 中的值。 由于 A列中不存在7.500,因此应使用下一个较低的值。 在这种情况下5.000属于产品2。

我尝试在 Cell D2 中使用以下公式,但不是获得产品2,因此我总是得到产品4。

=VLOOKUP(F16,$A$1:$B$4,2,TRUE)
=VLOOKUP(F16,$A$1:$B$4,2)

你知道如何解决这个问题吗?

3 个答案:

答案 0 :(得分:3)

对于未分类的数据,您可以使用以下公式:

=INDEX(B1:B4,MATCH(LARGE($A$1:$A$4,COUNTIF($A$1:$A$4,">"&C1)+1),A1:A4,0))

参见图片以供参考

enter image description here

答案 1 :(得分:0)

我将尝试使用添加列,它表示给定7.5和col A之间的差异,如下所示:=IF($C$1-A1<0,999999,$C$1-A1)然后得到像=MIN(E1:E4)这样的最小值。然后在B栏中获得相应的值。

答案 2 :(得分:0)

如果订单不能保证升序,那么你可以使用数组公式(使用ctrl + shift + enter而不是只输入创建数组公式)

=INDEX(B2:B5,MATCH((C2-MIN(IF((C2-A2:A5)<0,MAX(A2:A5),C2-A2:A5))),A2:A5,0))