2

使用INDEXandMATCH进行查找,遇到了某人以以下形式使用的表达式:

=INDEX(*range used*, MATCH(MIN(ABS(data!E2-lookup!$L$5:$L$105)),ABS(data!E2-lookup!$L$5:$L$105),0))

lookup!$L$5:$L$105是值查找表范围。我知道它应该做什么,但这data!E2-lookup!$L$5:$L$105部分没有意义。这是如何运作的?

4

1 回答 1

3

此公式仅用作数组公式。

MATCH部分获取与 中的值lookup!$L$5:$L$105最接近的那个值的位置data!E2。然后INDEX零件在 中获取相应的值*range used*。用公式的话来说:它匹配差异数组中的那个值,ABS(data!E2-lookup!$L$5:$L$105)这是这些差异中最小的。

例子:

在此处输入图像描述

公式F2为:

{=INDEX($A$2:$A$11,MATCH(MIN(ABS(E2-$B$2:$B$11)),ABS(E2-$B$2:$B$11),0))}

注意,这是一个数组公式。将其输入到不带大括号的单元格中,然后按 [Ctrl]+[Shift]+[Enter] 完成。

于 2015-05-05T14:08:58.517 回答