Excel中如何活用INDEX和MATCH函数-INDEX-MATCH上-Excel学习网

2020/09/27 08:25

INDEX-MATCH是Excel最强大的查找方法。但是许多用户发现它具有挑战性。这是专为INDEX-MATCH清除器而设计的三部分系列中的第一个。

VLOOKUP或INDEX-MATCH哪个最好?

您可能会对这个问题感到惊讶,因为答案从未被怀疑。INDEX-MATCH可以做VLOOKUP和HLOOKUP可以做的一切,还有更多。

以下是INDEX-MATCH比VLOOKUP更好的五个具体原因:

1.它从未比VLOOKUP慢,并且可以更快。

2.它返回一个引用而不是一个值,这使我们可以使用它在公式中做更多的事情。

3.不在乎结果数组相对于查找数组在哪里...即使在其他工作簿中也是如此。

4.它可以返回从最大到最小排序的数据的近似匹配。

5.它可以查找垂直或水平数据,而无需更改功能。

INDEX-MATCH的主要问题是许多Excel用户不知道如何使用它。真是可惜,因为INDEX和MATCH本身就是非常有用的功能。业务中的每个Excel用户都应该知道如何...单独地和组合地使用它们。

因此,在本文中,我将教您如何使用INDEX函数。

在本系列的第2部分中,我将向您展示如何使用MATCH函数。在第3部分中,我向您展示 了VLOOKUP无法完成的六个INDEX-MATCH查找。

最后,在第3部分中,我将向您展示如何结合使用这两个功能。特别是,我将向您展示如何执行VOOKUP和HLOOKUP无法执行的计算类型。

在链接上,您可以 下载所有三篇文章的示例工作簿的zip文件。

INDEX功能

INDEX函数使用以下语法:

= INDEX(reference,row_num,column_num,area_num)

如果引用仅指定一个区域或一个数组(通常如此),则可以忽略area_num参数,并提供以下语法:

= INDEX(参考,row_num,column_num)

如果引用仅指定一行或一列,则可以忽略前面公式中的第三个参数,如下所示:

= INDEX(参考,row_or_column_num)

尽管我们可以在INDEX-MATCH查找中使用区域号,但很少需要这样做。但是,我将简要说明它,以便您在需要时知道如何使用它。

指定区号

在下图中,第一个蓝色范围是区域1,第二个蓝色范围是区域2。第一个范围是区域1,因为我首先选择了该区域。

Excel中如何活用INDEX和MATCH函数-INDEX-MATCH上-Excel学习网

不连续的范围

要选择这样的“不连续范围”,请选择第一个范围,按住Ctrl键,然后选择第二个范围。然后选择第三个,依此类推。

此公式返回对第二个区域中单元格D4的引用:

= INDEX(((A1:B4,D2:F4),3,1,2)

即,此公式返回对第二个区域的第三行和第一列中单元格的引用,范围为D2:F4。也就是说,它返回的结果与公式= $ D $ 4将返回的结果相同。

注意,在公式中,当您使用单元格地址引用不连续的范围时,必须使用括号将引用括起来。如果您不这样做,Excel会认为第一个区域是INDEX的第一个参数,第二个区域是第二个参数,依此类推。

现在您知道了area_num的含义,我将忽略它,因为您将很少使用它。

使用INDEX返回引用

Excel中如何活用INDEX和MATCH函数-INDEX-MATCH上-Excel学习网

用于说明INDEX功能的表

这是一张简单的表格,其中随机列出四种产品的价格。为了方便起见,我已经分配了这些名称...

1.产品 -产品名称列。

2.价格 - 价格列。

3.数据-数据的两列。

4.标头 -列标题行。

我们可以在公式中使用INDEX函数来返回所有四个范围的数据。您可以 在此处下载带有这些INDEX公式的工作簿。

例如...

公式1:= INDEX(Product,2,1)

...返回“外套”。

严格来说,公式1返回对包含“外套”的单元格的引用。换句话说,公式1返回与...完全相同的信息。

公式2:= $ B $ 4

...也将返回“外套”。

如果INDEX仅引用一行或一列,则Excel允许我们跳过第二个参数。所以这个公式

公式3:= INDEX(Price,4)

...返回150。

这个公式

公式4:= INDEX(Header,2)

...返回“价格”。

INDEX函数还允许您引用范围中的整个行或列。为此,您可以省略需要整个区域的行或列的参数,或者使用零作为参数。

Excel中如何活用INDEX和MATCH函数-INDEX-MATCH上-Excel学习网

用于说明INDEX功能的表。

为了说明这个图,我从上面重复了这两个公式...

公式5:= COUNTA(INDEX(Data ,, 1))

公式6:= COUNTA(INDEX(Data,0,1))

...返回4,数据范围内的产品名称数量。

以下两个公式使INDEX进一步迈进了一步。在这里,通过为列参数省略或使用零,内部INDEX返回第2行的数组:{“ Coats”,300}。然后外部INDEX返回该数组中的第一项“外套”。也就是说,这些公式使用不同的方法来返回与#1和#2完全相同的结果。

公式7:= INDEX(INDEX(Data,2,),1)

公式8:= INDEX(INDEX(Data,2,0),1)

实际上,当您需要引用一行或一列时,建议您始终使用公式6中所示的版本和公式8的内部版本。也就是说,如果要指定整行或一列,请使用零而不是省略该参数。

这样做的一个很好的原因是,当您为参数指定零时,您将清楚自己打算做什么。相反,如果省略该参数,尤其是在Formula 7中,则意图并不总是很明显。

免费直播

    精选课程 更多

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司