HR交流圈工具癖街上的HR们

5分钟做好模板后,查找员工信息只需3秒!

2017-08-09  本文已影响35人  HRPARK

上次跟大家讲了,如何用VLOOKUP函数建立《员工档案管理表》。VLOOKUP函数虽然很强大,但其基本用法中只能作正向查找,而不能反向查找,即根据前列查找后列的内容,而不能根据后列查找前列内容。

如我用VLOOKUP函数,可以根据工号来查姓名,但是反过来不行。但如果我用INDEX+MATCH函数组合,可实现双向查找,可顺可逆。

接下来,我们还是以《员工档案管理表》举例,如何根据姓名来查员工信息。

1、设置数据有效性

关键步骤:

数据—数据有效性—允许(序列)—来源(框选数据源)

2、INDEX函数

INDEX翻译成中文的意思是“索引”,INDEX函数是指返回指定区域、指定位置的数值。

INDEX的语法:

INDEX(array,row_num,column_num),指返回数组中指定的单元格或单元格数组的数值。

INDEX(reference,row_num,column_num,area_num),指返回引用中指定单元格或单元格区域的引用。

简单点说就是 INDEX(区域,第几行,第几列),返回区域第几行第几列的数值。

那么,如何用INDEX函数来找出李四的身份证号呢?

关键步骤:

输入INDEX—框选查找区域—李四的身份证号在第3行第3列

做到这一步,很多人会直接往右边复制公式,结果看似和源数据一样,但是换个姓名后面的信息并没有随之变化,所以这样是不可取的。

3、COLUMN函数

身份证号是在源数据的第3列,出生日期是在源数据的第4列,以此类推……

这个时候,我们可以用COLUMN函数来表达列标,即COLUMN()是指查看所选择的某一个单元格所在第几列,即它是第几列。

4、MATCH函数

COLUMN函数解决了列标的问题,行号我们要用到MATCH函数来表示。

MATCH函数的意思是返回目标值在查找区域中的位置,语法为:

MATCH(lookup_value,lookuparray,match-type)

lookup_value:表示查询的指定内容;

lookuparray:表示查询的指定区域;

match-type:表示查询的指定方式,用数字-1、0或者1。

match_type=0(精确查找)

查找精确等于lookup_value的第一个数值,lookup_array按任意顺序排列。一般只使用精确查找。

match_type=1

查找小于或等于lookup_value(目标值)的最大数值在lookup_array(查找区域)中的位置,lookup_array必须按升序排列。

match_type=-1

查找大于或等于lookup_value(目标值)的最小数值在lookup_array(查找区域)中的位置,lookup_array必须按降序排列。

如果我们要查找李四在源数据第几行,可以怎样表示?

关键步骤:

输入=INDEX—框选李四(需查询内容)—框选源数据姓名列(查询的区域)—0-(精确匹配)

5绝对引用

(错误做法)

很多人以为这样就完了,直接向右复制发现公式不适用,那是因为我们没有采取绝对引用。关于绝对引用、相对引用和混合引用这三者的区别,我们举例来说明:

1、相对引用,复制公式时地址跟着发生变化,如C1单元格有公式:=A1+B1

当将公式复制到C2单元格时变为:=A2+B2

当将公式复制到D1单元格时变为:=B1+C1

2、绝对引用,复制公式时地址不会跟着发生变化,如C1单元格有公式:=$A$1+$B$1

当将公式复制到C2单元格时仍为:=$A$1+$B$1

当将公式复制到D1单元格时仍为:=$A$1+$B$1

3、混合引用,复制公式时地址的部分内容跟着发生变化,如C1单元格有公式:=$A1+B$1

当将公式复制到C2单元格时变为:=$A2+B$1

当将公式复制到D1单元格时变为:=$A1+C$1

规律:加上了绝对地址符“$”的列标和行号为绝对地址,在公式向旁边复制时不会发生变化;没有加上绝对地址符号的列标和行号为相对地址,在公式向旁边复制时会跟着发生变化;混合引用时部分地址发生变化。注意:工作薄和工作表都是绝对引用,没有相对引用。

具体操作很简单,选中后按一下F4即可切换到绝对引用。(其他几种引用木模式切换自己可以多按几下F4试试)

6、最后效果

图中可以看到,我们直接搜姓名,相关的员工信息就能显示出来。无论是VLOOKUP,还是INDEX+MATACH函数组合,合适自己需求的才是最好的。技多不压身,多学也无妨!

上一篇 下一篇

猜你喜欢

热点阅读