Excel中如何活用INDEX和MATCH函数-INDEX-MATCH上-Excel学习网
2020-09-29 · 专注大学生职业技能培训在线教育品牌
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,因为我首先选择了该区域。
不连续的范围
要选择这样的“不连续范围”,请选择第一个范围,按住Ctrl键,然后选择第二个范围。然后选择第三个,依此类推。
此公式返回对第二个区域中单元格D4的引用:
= INDEX(((A1:B4,D2:F4),3,1,2)
即,此公式返回对第二个区域的第三行和第一列中单元格的引用,范围为D2:F4。也就是说,它返回的结果与公式= $ D $ 4将返回的结果相同。
注意,在公式中,当您使用单元格地址引用不连续的范围时,必须使用括号将引用括起来。如果您不这样做,Excel会认为第一个区域是INDEX的第一个参数,第二个区域是第二个参数,依此类推。
现在您知道了area_num的含义,我将忽略它,因为您将很少使用它。
使用INDEX返回引用
用于说明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函数还允许您引用范围中的整个行或列。为此,您可以省略需要整个区域的行或列的参数,或者使用零作为参数。
用于说明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中,则意图并不总是很明显。