举个例子,左边是数据源,我们现在需要查找匹配出部分员工的性别,部门,工资等多列信息。 碰到这种多列查找匹配,小伙伴们是不是要用3次VLOOKUP函数进行查找 在G2输入公式: =VLOOKUP(F2,A:D,2,0) 在H2输入公式:=VLOOKUP(F2,A:D,3,0) 在I2输入公式:=VLOOKUP(F2,A:D,4,0) 这个例子只是需要查找3个,如果需要查找10多个,那用这个还是麻烦了。今天教大家一个技巧,直接一次性的查找匹配出来,分两种情况 (1)需要查找的字段顺序和原始数据中的顺序一致原始数据中标题字段是按员工、性别、部门、工资依次排列 我们需要查找的结果也是按同样的顺序排列的,上面的例子就是 我们分析上面公式里面,就是第3个参数选择第几列的数字进行变化。 COLUMN()函数是返回单元格的位置在表格中第几列,如COLUMN(B1)就是B1单元格是第几列。显然是第2列,所以结果是2,然后再向右拖动的时候,引用的就是C1,D1,所以数字也会变化3,4,5,6..... 所以,原始公式是:=VLOOKUP(F2,A:D,2,0),将第3个参数换成column函数,然后注意相对引用和绝对引用的数据即可。 现在将G2的公式改成:=VLOOKUP($F2,$A:$D,COLUMN(B1),0) 输入一次公式,直接向右填充,向下填充,就得到了所有的结果。 2、需要查找的字段顺序和原始数据中的顺序不一致如下所示:原始数据源是员工、性别、部门、工资这个顺序排列的 但是需要查找的表格的顺序是员工、工资、性别、部门,这个是没有任何排序原则的 这个时候,我们就不能用column函数向右填充了。 查找工资的时候,是返回第4列,查找性别的时候,返回第2列,查找部门的时候,返回第3列。 这个时候,我们就需要用到MATCH函数了。 =MATCH(G1,$A$1:$D$1,0)表示,G1单元格的工资,在A1:D1这个区域第几个。是第4个,所以结果是0,MATCH的第3个参数0表示精确查找。 所以我们可以使用这个MATCH函数直接来替换VLOOKUP函数的第3个参数。在G2单元格输入公式: 今天的这个技巧,你们都学会了么?欢迎留言讨论! ----------------- |
|