分享

巧用Excel函数来实现工作表间的数据关联

 文山揽胜 2010-04-30

巧用Excel函数来实现工作表间的数据关联


 出自:http://dev./course/5_office/excel/excelshl/2007214/22685.html

   或http://www./html/excel/10_43_42_572.htm

开学不久,教导处交给我一个光荣的任务:填报学年报表。在学年报表中,要求填写在校所有学生的姓名、性别、家庭住址等各种信息。由于以前每学年都要填写,所以我认为这并不是一件很难的事,只要把以前的报表找出来稍改一下不就行了吗。可是,教导主任的一句今年所有的班级已经全部重新分了班却让我叫苦不迭。我差点儿晕倒,这样一个个的查找,再复制、粘贴,不是要把人累死吗?教导主任大概也知道工作量比较大,安慰我说:这样吧,周末来加加班,给你多开点儿补贴。我无可奈何地点了点头。

    
思路分析:目前在Excel中有两张表,一张表是原来的学年报表(原表,含学生的各种信息,如图1所示),一张表是现在的学生花名册(新表,只有学生的姓名和性别信息,如图2所示)。只要能将原表中的信息根据新表中的学生姓名关联到新表中,就可以完成任务了。


 


       选择新表中的C2单元格,如图3所示。单击[fx]按钮,出现插入函数对话框。在类别中选择全部,然后找到VLOOKUP函数,单击[确定]按钮,出现函数参数对话框。第一个参数为需要在数据表首列进行搜索的值,在这里就是搜索学生姓名,也就是新表中的A2单元格。第二个参数是需要在其中搜索数据的信息表,这里也就是整个原表的数据,即原表!A2:G34”。为了防止出现问题,这里,我们加上“$”,即原表!$A$2:$G$34”,这样就变成绝对引用了。第三个参数为满足条件的单元格在数组区域内中的列序号,在本例中,也就是在原表!$A$2:$G$34”这个区域中,根据第一个参数返回第几列的值,这里我们填入3”,也就是返回出生年月的值。第四个参数为指定在查找时是要求精确匹配还是大致匹配,如果填入0”,则为精确匹配。这可含糊不得的,我们需要的是精确匹配,所以填入0”(请注意:Excel帮助里说0时是大致匹配,但很多人使用后都认为,微软在这里可能弄错了,为0时应为精确匹配),此时的情形如图4所示。按[确定]按钮退出,即可看到C2单元格已经出现了正确的结果。

    
C2单元格向右拖动复制到D2单元格,这时会出现错误,原因在哪里呢?原来,D2的公式自动变成了“=VLOOKUP(B2,原表!$A$2:$G$34,3,0)”,我们需要手工改一下,把它改成“=VLOOKUP(A2,原表!$A$2:$G$34,4,0)”,即可显示正确数据。继续向右复制,同理,把后面的E2F2等中的公式适当修改即可。一行数据出来了,对照了一下,数据正确无误,再对整个工作表进行拖动填充,整个信息表就出来了。


    最后说明一下:使用这个公式的时候,要求学生名称不能有重名,如果有的话,要先稍改一下,比如在名称后面加个以示区分。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多