索引匹配,其中匹配号码不准确

我在索引匹配function有点问题。 我正在尝试在匹配的地方匹配哪些值相互之间最接近,实质上可能会使我的数据中出现四舍五入的差异,从而导致无法完全匹配。 我将如何去做这个例如

5,778,590.25是我的参考号码

我想在下面的行中匹配到5,778,591.00来提高交易date;

交易dateCCY金额
01/08/2016 USD 5,778,591.00

假设交易date在A1栏

一种做近似匹配的方法是使用MATCH函数的第三个参数。 但是,如果你的值没有sorting,这不一定performance良好。 所以我会build议这样的事情:

 =INDEX(B:B,MATCH(MIN(ABS(B:B-Ref)),ABS(B:B-Ref),0)) 

您的金额在B列, Ref是您的参考号码。 这find了最接近您的参考号码的价值,无论是大于还是小于它。

请注意,这是一个数组公式,所以需要使用Ctrl + Shift + Enter进行input才能正常工作。

你可能想把它包装在IF函数中,如果它不够接近任何数字,将会告诉你“不匹配”。 例如

 =IF(MIN(ABS(B:B-Ref))>5,"No Match",INDEX(B:B,MATCH(MIN(ABS(B:B-Ref)),ABS(B:B-Ref),0))) 

如果$ 5内没有任何值,将返回“不匹配”。