雪鹰171050890
这个问题用函数和VBA代码就可以轻松解决,简单几步即可。
一、准备工作
1、表格存放路径:D:\\各班级成绩 (可根据自己的存放位置自行修改),直接复制路径即可。如图:
2、表格的准备,表1存放数据源,表2罗列班级,注意班级不要重复,表3是一个空表,命名为“data”,起过渡作用。
如图:
表1
表2
表3
以上准备工作做好后,接下来就是操作了。
二、实际操作
在表1(数据源)按 AIT+F11,调出VBA窗口,复制粘贴以下代码
Sub 按班级拆分表格()
Dim i
Dim b
i = 2
While Sheets("班级").Cells(i, 1) <> ""
b = Sheets("班级").Cells(i, 1)
Sheets("数据源").Select
Rows("1:1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$D$2001").AutoFilter Field:=1, Criteria1:=b
Range("A1:D1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("data").Select
Range("A1").Select
ActiveSheet.Paste
Range("G6").Select
Sheets("data").Select
Application.CutCopyMode = False
Sheets("data").Copy
ActiveWorkbook.SaveAs Filename:="D:\\各班级成绩\\" & b & ".xlsx\
excel图表
利用【数据透视表】功能可以实现:
如以下数据需要按班级显示在每个工作表上:
具体操作方法:
一、鼠标定位于该数据区域中,点击【插入】菜单栏下的【数据透视表】
二、选择放置数据透视表的位置,这里以现有工作表为例,位置定位于工作表的空白处后点击【确定】。
三、点击【确定】后如下图所示:
四、按下图所示,将对应的标题项拖动到对应的位置。
五、按如下图操作:
六、在弹出的窗口中直接点击【确定】
七、按班级自动生成对应的工作表以及数据。
工作表部分:
数据部分:
完成!
office之城
方法有三:
1、将表格按年级、班级排序,分段剪切到各班的excel表中,最简单,最有效
2、利用数据透视表功能,筛出各班,逐班剪贴,操作略复杂,需掌握一定技巧
3、用Vba宏功能,编一段代码,可自动实现,最方便,但要有编程基础,代码可参考:http://club.excelhome.net/thread-844996-1-1.html
1把老骨头
全校学生名单在一个表里,用什么公式能把数据按班级分到不同的excel里?
关于工作表的拆分做法如下:
1、将鼠标放在数据区域内点击插入——数据透视表——选择保存位置——确定
2、将需要汇总的字段拖入各标签
3、将鼠标放在透视表内——点点击选项——显示报表筛选页即可
附上动画演示:
Excel办公小动画
可以用数据透视表的报表筛选功能