Excel 将单元格与另一个范围中最近的最高值相匹配
我在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是包含随
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,我也没有想到找不到匹配项的情况。