加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

excel合并多个工作表(提取工作表数据)

(2011-10-09 01:21:30)
标签:

杂谈

分类: 网络拾零
在工作中,我们常常会遇到如下问题:

    1. 需要将两个工作表合并到一个。

    2. 需要从一个工作表中提取某列的部分数据到另一个工作表中。

 

情况一:A、B两个工作表的数据的行数、排序等内容完全一样,只是列数不同。

解决办法:

    问题1:最简单的方法,就是将A工作表与B工作表不同的列复制到B工作表中空白列即可。

    问题2:最简单的方法,就是将A工作表中某行与B工作表对应数据行的数据复制到B工作表相应列的空白行中即可。

    当然,以上是最简单的情况下的最简单办法。只是复制粘贴即可。

 

情况二:A、B两个工作数据行不同,A数据多,B数据少,A有包含B所需要的数据。需要从A中提取需要的数据到B中。

    针对此问题,问题1和问题2是用同一个方法来操作。只不过,一个是提取一列,另一个可能是提取多列。所以,我们以提取一列来操作,多列的情况,则是可以举一反三来做的。

    为了让大家更好的理解,笔者准备了两个示例工作表,按步骤展示操作。

http://s4/middle/63ac448bt97a9829b5433&690
图1  sheet1工作表

 

 http://s10/middle/63ac448bt97a982e794b9&690
图2  Sheet2工作表

 

    从图中可以看出:sheet1工作表中是某学校某年级各班级学生成绩表,包含学生考号、班级、姓名、语文、英语、数学、物理、化学、政治、历史、地理、平均分、年级名次、班级名次共15列。按考号从低到高显示学生信息(这里只显示了25行,实际有1500多个学生的考试数据)。

    Sheet2工作表中这些学生中语文成绩超过100分的学生考号、班级、姓名、语文成绩共4列,这里按语文成绩从高到低排序显示学生信息(这里只显示了25行,实际有50个学生的考试数据)。

    我们想了解一下,这些语文成绩都超过100分的50名学生在年级中排名如何?!我们要如何操作呢?

    第一步,在Sheet2表的E列(第5列)的E1位置输入表标题:名次。

    第二步,在Sheet2表的E列(第5列)的E2位置输入:

=VLOOKUP(A2,Sheet1!$A$2:$N$2000,14,TRUE)

http://s4/middle/63ac448bt97a983525fd3&690
图3  Sheet2表E2位置公式和数据

 

    第三步,将光标移到E2右下角,当显示为“+”时,双击鼠标左健,整列数据即完成。

http://s16/middle/63ac448bt7590f3b4953f&690
图4  Sheet2表E3位置公式和数据

 

    到此,从Sheet1中提取相应学号学生的年级名次数据,已经完成了。

    是不是很简单呢?!--唔,我知道你在怀疑这提取的数据是否正确的问题?!

    那么我们将Sheet1中的数据整体复制到Sheet3中,再按语文列从高到低排序。可以看到名次列与考号对应的值与上表一致。如下图所示:

http://s8/middle/63ac448bt7590f3bc1fe7&690

 图5  按语文成绩排序过的成绩表

 

    现在再解释你有关刚才输入的公式的疑惑。EXCEL原公式结构为:

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) 

 

    我这里输入的是:VLOOKUP(A2,Sheet1!$A$2:$N$2000,14,TRUE)

说明:

    A2表示根据Sheet2表与Sheet1表中第一列值进行对比,找相同的名称来匹配(所以,这一列应该是唯一的)。注意:值须按值增逆排列(笔者在操作时,有一次打乱考号顺序操作,结果获得的名次与实际不符,据分析是EXCEL按与A列(考号)匹配的值存在E列(名次)中,未排序。即提取的值是未经排序后的值。因此建议一定要排序来提取值)。

    Sheet1!$A$2表示Sheet1表的A列第2行(即A2)开始搜索对比。

    $H$2000表示Sheet1的N列第2000行结束。如果你的行数比这大,要增加(注:因本表中只有1500多条数据,用2000有余。可以写精确值,也可以写稍大一些值。但不能低于有值的行数,否则可能有些数据查不到)。

    14表示提取的是第14列的值,即N列。

    TRUE表示显示精确值,如果Sheet1中找到值,则会显示:#REF!。

----------------------------------------------------------------------------

注:以上为在EXCEL2007中同一个EXCEL文件的不同工作表中操作。

另:为了避免出错和核对数据,不建议直接在原数据上进行操作,建议是复制到新文件中进行以上操作。

 

相关链接

自己动手制作excel成绩分析表(一劳永逸)

excel数据引用公式的使用方法

网络阅卷系统的使用---试卷的设计和答题卡的制作

SUMPRODUCT函数

用excel设计成绩分析表

excel合并多个工作表(提取工作表数据)

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有