当前位置: 首页 > 图文教程 > 工具软件 > 办公软件 > Excel:轻松合并成绩表

办公软件
Word 2007 beta2中又挖出两个彩蛋
用Word2007发布文章到你的博客
用Word 2007自创书法字帖
办公不再难 轻松应对Word表格
没“头”没“尾”,Word页面显示异常
改改小小细节 Excel表格立刻变得更漂亮
用Word做个世界上最复杂的汉字
清除Word文档页眉横线的第N种方法
办公应用心得:在Word中搞数字化
各种汉字输入法在Word输入汉字偏旁部首
办公高手进阶-Word的自定义
四种方法给Word文档快速添加落款
分有多节的Word文档如何打印指定页
Word文档大瘦身
Word 2007精彩的稿纸功能
Word 2007的实用技巧最新几则
用Word2003给桌面添加一个日历
Word页眉内容快速对齐的方法
Word2007新工具“SmartArt”介绍
Word应用实用技巧 巧妙解决打印问题

办公软件 中的 Excel:轻松合并成绩表


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 43 ::
收藏到网摘: n/a

每次考完试,学校的教务部门都要将各班提交的成绩进行汇总和分析。由于各班的成绩表都是单独提交的,如何将所有班级的成绩合并到一张工作表上以便于数据的处理呢?这些操作我们平时都是通过复制粘贴来实现的,如果要合并的班级很多,就显得比较繁琐了,而且容易出错。笔者所在学校也有这样的问题,经过一番研究,我用VBA轻轻松松地实现了这一操作。

  假设我们将所有考生的成绩合并到Sheet1中。在当前的工作表中用“控件工具箱”画一个命令按钮并命名为“合并成绩”(如图所示),双击后在其Click事件中输入下面的代码:

  Private Sub CommandButton1_Click()

  '统计要合并的工作表的数量(循环次数)

  For i = 2 To Sheets.Count

  Worksheets(i).Select

  '选择各工作表中的数据区域并复制

  Worksheets(i).Select

  '选择各工作表中的数据区域并复制

  irow = Worksheets(i).[B65536].End(xlUp).Row

  ActiveSheet.Range('A2:AA' && irow).Select

  Selection.Copy

  '粘贴到第一张工作表中

  Worksheets(1).Select

  mrow = [a65536].End(xlUp).Row + 1

  Range('A' && mrow).Select

  ActiveSheet.Paste

  Next i

  '主体程序执行完毕

  [a1].Select

  CommandButton1.Enabled = False

  countall = '一共合并了' + Str([a65536].End(xlUp).Row - 1) + '个学生的成绩,数据表合并成功!'




  MsgBox countall, vbOKOnly, '提示信息'

  End Sub

  程序中“ActiveSheet.Range('A2:AA' && irow).Select”的功能用于选择每张工作表除了第一行以外的数据区域(第一张工作表除外)。

  小提示:在进行本操作之前,首先要保证每张工作表的字段顺序是一致的,且每张成绩中第一行是表格的标题行。要做到这一点也行容易,可事先将制作好的Excel文件用“共享工作簿”的方法共享给老师们以便于他们录入成绩。