1职场实例
我们在日常使用Excel时,遇到最多的场景便是“查找”问题,一提到“查找”,我们脑海里首先想到的肯定就是“Vlookup函数”了,但是“Vlookup函数”也有其自身的小短板,比如说遇到逆向查找的时候,使用Vlookup函数的基本语法公式时便会立马失效。那么有没有一种方法,不管正向还是逆向查询,都可以快捷的套用呢?下面我们就来普及一下!
如下图所示:
A:C列展示的是某网店的产品库存数量表,包括商品编码、产品名称及数量,三者为唯一的一一对应关系。我们想要根据E列产品名称查询并返回商品编码(逆向查询)和数量(正向查询)。
2解题思路
Index函数和Match函数结合运用,能够完成类似Vlookup函数和Hlookup函数的查询功能,并且可以实现灵活的逆向(即从右向左或是从下向上查询)和正向查询(即从左向右或是从上向下查询)。
逆向查询:
我们在F2单元格输入以下函数公式:
=MATCH(E2,B:B,0)
MATCH函数以精确匹配(第3参数为0)的方式定位E2单元格的产品名称“威士忌”在B列中的位置,结果为4,即在B列中的第4个单元格位置。
MATCH函数用于在范围单元格中搜索特定的项,然后返回该项在此区域中的相对位置。
=MATCH(搜索键值, 范围, [排列顺序])
参数释义:
搜索键值(必填):想要查找的值。
范围(必填):可能包含所要查找数值的连续的单元格区域,仅支持单行或单列,不支持多行/多列。
排列顺序(选填):1 为默认类型,此时假设范围已按升序排序,返回小于等于搜索值的最大值。0 表示完全匹配,在范围未排序的情况下需要使用此方式。-1 是指假设范围是按降序排序时,返回大于等于搜索值的最小值。
我们继续完善F2单元格中的函数公式:
=INDEX(A:A,MATCH(E2,B:B,0))
用INDEX函数根据MATCH(E2,B:B,0)函数的索引值4,返回A列中的第4行的对应的产品编码“ASC655”。
INDEX 函数通常用来查找数据,根据指定的行和列找到某单元格的内容。
=INDEX(引用, 行, [列], [区域])
参数释义:
引用(必填):指要查找的区域范围。
行(必填):行数。
列(选填):列数。
区域(选填):选用的第几个引用的区域, 如果只有一个区域可直接输入1。
正向查询原理与逆向查询相同。
我们在G2单元格输入以下函数公式:
=MATCH(E2,B:B,0)
MATCH函数以精确匹配(第3参数为0)的方式定位E2单元格的产品名称“威士忌”在B列中的位置,结果为4,即在B列中的第4个单元格位置。
我们继续完善G2单元格中的函数公式:
=INDEX(C:C,MATCH(E2,B:B,0))
用INDEX函数根据MATCH(E2,B:B,0)函数的索引值4,返回C列中的第4行的对应的产品数量“417”。