zoukankan      html  css  js  c++  java
  • 【Office】excel中用VLOOKUP函数进行数据匹配

    经常需要对excel中两个表格的数据通过关联列进行数据匹配,我们通过VLOOKUP函数来实现。

    场景

    当前有两个sheet,考核员工表和全员考核明细表

    表1-考核员工表

    表2-全员考核明细表

    目标:依据两个表中userid这一列,将表2中对应员工的部门、考核总分、出勤天数匹配给表1对应的员工;

    VLOOKUP函数:

    =VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) 

    第一个参数:指定用哪个单元格去匹配;

    第二个参数:指定查找的区域;

    第三个参数:指定要返回的数据在查找区域的第几列;

    第四个参数:指定匹配是模糊匹配还是精准匹配。

    在知道VLOOKUP函数后我们就可以通过下面的方式来实现我们的目标:

    第一步:在表1的C2单元格中插入公式=VLOOKUP(A2,全员考核明细表!A:G,3,0);

    第二步:回车后会匹配出对应的部门信息;

    第三步:鼠标移到C2单元格的右下角,出现实心的黑色【+】号,双击填充此公式到整列;

    匹配考核总分这一列时只需要在表1的D2单元格中将查找区域的返回列改为表2的考核总分列,即为=VLOOKUP(A2,全员考核明细表!A:G,4,0);

    【注意】

    1、VLOOKUP函数的第四个参数用于指定是模糊匹配还是精确匹配,为0时表示精确匹配,为1或省略时表示模糊匹配。如果忘了设置第4个参数则会被公式误以为是故意省略,按模糊查找进行。

    2、引用方式不对使公式复制后产生错误

    由于没有使用正确的引用方式,造成在公式复制后查找区域发生变动引起错误。如下图所示,当C9的公式复制到C10和C11后,C10公式返回错误值。

    错误原因:由于第二个参数A2:D6是相对引用,所以向下复制公式后会自动更改为A3:D7,而A10单元格中的工号A01所在的行不在A3:D7区域中,从而造成查找失败。

    解决方案:把第二个参数的引用方式由相对引用改为绝对引用即可。

    B9公式改为:=VLOOKUP(A9,$A$2:$D$6,2,0)

     参考文章:

    Excel-VLOOKUP函数跨表匹配查找

    Excel的两个表格按照某一列数据进行匹配

    Vlookup函数的12种常见错误

  • 相关阅读:
    为什么需要字节对齐?
    从sprintf函数谈符号扩展问题
    sprintf介绍
    char的本质
    使用sprintf连接字符串
    sscanf用法简介
    IE6,IE7,FF | CSS + DIV 兼容问题综合解决方案CSS HACK
    Div+css优点
    MS SQL数据库备份和恢复存储过程(加强版本)
    如何实现HTML页面无刷新更换CSS样式
  • 原文地址:https://www.cnblogs.com/leiblog/p/15002971.html
Copyright © 2011-2022 走看看