
一、表格查询问题
在日常工作中,常常需要在员工信息表中查找特定员工的详细信息。例如,在《全体员工信息表》中搜寻《优秀员工信息表》中某员工的工号。许多同事会选择使用VLOOKUP函数进行此类查询,但此函数要求查找列必须是查找区域的第一列,因此有一定的局限性。
二、解决方案分享
为了解决这个问题,我们可以使用INDEX函数和MATCH函数的组合。
(一)INDEX和MATCH函数概述
1. INDEX函数
INDEX(取值范围,第几行,第几列)
INDEX函数的主要作用是返回表格或区域中的值或值的引用。
2. MATCH函数
MATCH(查找值,查找区域, [查找方式])
MATCH函数则用于返回查找内容在查找区域中的相对位置。
(二)问题解决步骤
以员工王某彬为例:
第一步,使用MATCH函数在全体员工信息表中定位王某彬所在的行;
第二步,结合第一步得到的行数,利用INDEX函数找到王某彬对应的员工工号。
三、具体操作步骤
根据以上思路,我们可以构建如下函数:=INDEX(B3:C12,MATCH(G3,C3:C12,0),1)。
详解这个公式:
我们将公式分为两步来解释。
第一步,理解INDEX函数的三个参数(如图示)。其中,②中的MATCH函数运算后会得出一个行数,这个行数将和③中的参数1结合,确定①中的具体单元格,从而得到相应的值。这里③中的参数设置为1,是因为在B3:C12这个范围内,员工工号位于第一列。
第二步,分析MATCH函数。G3是我们要查找的王某彬的单元格,②中的查找区域是全员表中的姓名列所在区域。我们只需要知道王某彬在姓名列中的行数,就可以通过这一行数找到其对应的员工工号。第三个参数代表精确查找。使用绝对引用固定单元格区域,避免在拖动单元格时出现偏移。
当我们成功计算出第一个结果后,可以拖动单元格的右下角,实现其他优秀员工工号的批量填充。
四、文章小结与前瞻
