查找值是否在范围内(范围在2个单独的列中)

时间:2015-10-26 18:47:22

标签: excel range vlookup

道歉,如果已经在某处发布,我一直在搜索,但仍然有问题。

在一个Excel工作表中,我在A列中有一个数字列表,称之为“Sheet1”。在另一张表(称之为“Sheet2”)中,我有3列,基本上是一个数字范围列表。列A是起始范围,列B是结束范围,列C是一些非数字分类,是我想要带回的值。我也希望这个范围具有包容性。

示例:

表1单元格A1 = 78335;表1单元格A2 = 80000;片材1单元A3 = 90000

(a)片材2电池A1 = 78334,片材2电池B1 = 78335;表2单元格C1 =“设计”

(p)片材2电池A2 = 79999,片材2电池B2 = 80001;表2单元格C2 =“艺术”

(c)片材2电池A3 = 90001,片材2电池B3 = 99999;表2单元格C3 = Excel N / A错误

在这种情况下(a)的预期返回值将是“设计”,因为数字在表2的包含范围内,情况(b)的返回值的预期值将是“Art”,并且情况(c)的预期返回值将是一个错误,因为它不属于任何提供的范围。

我尝试了Vlookups,查找和索引匹配无济于事。 Lookup函数有点工作,但没有上限,所以如果有任何错误,它只会返回列表中的最后一项(即表2列C)。

非常感谢帮助!

此致

2 个答案:

答案 0 :(得分:0)

如果你想观看一两个视频..

答案 1 :(得分:0)

您可以使用Vlookup进行搜索,将rangelookup设置为false,以便在较低范围列上获得最接近的匹配。告诉查找返回上部范围列,如果它超过您要查找的值,则获得所需内容,否则返回null。所以在表1,单元格a2中,你会有类似的东西:

=if(vlookup(a1,Sheet2!a1..c3,2,false) >= a1, vlookup(a1,Sheet2!a1..c3,3,false), "")

这意味着您正在向工作表2的列a中查找最接近的数字,该数字低于工作表1中的a1的内容。一旦找到,将返回b列中的值,然后将其与a1进行比较再次,确保a1在范围内(表2中的值,b列大于或等于它)。如果是,则再次执行查找,但这次返回表2中的列c,这是您的返回值。如果第一次查找没有找到范围内的内容,则返回空字符串。