我在索引匹配功能方面遇到了一些问题。我正在尝试索引匹配,其中匹配是彼此最接近的值,实质上我的数据可能存在舍入差异,这使得完全匹配不可能。我将如何解决这个问题,例如
5,778,590.25是我的参考编号
我希望这与下面一行中的5,778,591.00相匹配以拉高交易日期;
交易日期CCY金额
2016/08/01 USD 5,778,591.00
假设交易日期位于A1栏
答案 0 :(得分:1)
进行近似匹配的一种方法是使用MATCH
函数的第三个参数。但是,如果您的值没有排序,这并不一定表现良好。所以我建议这样的事情:
=INDEX(B:B,MATCH(MIN(ABS(B:B-Ref)),ABS(B:B-Ref),0))
您的金额在B栏中,Ref
是您的参考号。这会找到与您的参考编号最接近的值,无论它是大于还是小于它。
请注意,这是一个数组公式,因此需要使用Ctrl + Shift + Enter输入才能正常工作。
您可能希望将其包含在IF
函数中,该函数将告诉您“#No; No Match"如果它不足以接近任何数字。 E.g。
=IF(MIN(ABS(B:B-Ref))>5,"No Match",INDEX(B:B,MATCH(MIN(ABS(B:B-Ref)),ABS(B:B-Ref),0)))
将返回" No Match"如果5美元内没有任何值。