Excel 将单元格与另一个范围中最近的最高值相匹配

Excel 将单元格与另一个范围中最近的最高值相匹配,excel,indexing,match,Excel,Indexing,Match,我在Excel工作簿的“构建”选项卡上有一个数字,在同一工作簿的“哦”选项卡上有一个随机数字列表。我正在尝试将“累积”选项卡上的数字与OH选项卡上最接近的最高值相匹配。 我在网上找到了这个公式,并将其调整为我的单元格引用和工作表名称,但它似乎只匹配最近的数字,而不是最高最近的数字: =INDEX(OH!$B$2:$B$250,MATCH(MIN(ABS(buildup!AC8-OH!$B$2:$B$250)),ABS(buildup!AC8-OH!$B$2:$B$250),0)) OH是包含随

我在Excel工作簿的“构建”选项卡上有一个数字,在同一工作簿的“哦”选项卡上有一个随机数字列表。我正在尝试将“累积”选项卡上的数字与
OH
选项卡上最接近的最高值相匹配。 我在网上找到了这个公式,并将其调整为我的单元格引用和工作表名称,但它似乎只匹配最近的数字,而不是最高最近的数字:

=INDEX(OH!$B$2:$B$250,MATCH(MIN(ABS(buildup!AC8-OH!$B$2:$B$250)),ABS(buildup!AC8-OH!$B$2:$B$250),0))

OH
是包含随机数列表的工作表<代码>累积!AC8是我希望与
OH
选项卡上最接近的最高值匹配的数字的单元格引用。

我将使用带有
SMALL
MIN
功能的数组公式,使用ctrl+shift+enter输入:

使用
SMALL

=SMALL(IF(OH!$B$2:$B$250>=buildup!AC8,OH!$B$2:$B$250),1)
使用此选项,可以根据第二个参数增加到第二高、第三高等。这也将返回
#NUM如果未找到匹配项

使用
MIN

=MIN(IF(OH!$B$2:$B$250>=buildup!AC8,OH!$B$2:$B$250))

正如@Byron指出的,当没有大的数字可匹配时,将返回0,因此可能首选
SMALL

SMALL
MIN
都忽略
FALSE
,因此如果需要,可以删除第三个参数。保存两个字符。我会非常小心地使用
MIN
这里。。。当没有更大的数字可匹配时,它将返回值
0
SMALL
将返回
#NUM哪一个可能更可取。@拜伦,谢谢,我忘了他们都忽略了false,我也没有想到找不到匹配项的情况。