返回目录:excel表格制作
全校学生名单在一个表里,用什么公式能把数据按班级分到不同的excel里?
这个问题用函数和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", FileFormat:= _xlOpenXMLWorkbook, CreateBackup:=False
ActiveWindow.Close
Range("A1:D4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
i = i + 1
Wend
End Sub
然后关闭VBA对话框,在表1窗口按ALT+F8执行代码即可。
如下图:
复制粘贴代码
执行代码
下面我对代码做一些必要的说明:
三、最终效果
这个拆分模型不仅可以运用到班级的拆分,也可以用在其他方面的拆分,如按产品,人员,业绩都是可以的。
如果帮到你,请关注我!帮忙点个呗!谢谢,不明白的可以联系我。
在Excel中,怎么快速查询2个表格里面不同的人员名单并显示?
如下图表1和表2,要统计两个表格中不同的人员姓名并显示出来。
在表1的C2单元格输入公式:=IF(COUNTIF(Sheet2!$A$2:$A$8,Sheet1!A2)=0,"不同","")
在表2的C2单元格输入公式:=IF(COUNTIF(Sheet1!$A$2:$A$8,Sheet2!A2)=0,"不同","")
公式说明:COUNTIF(Sheet2!$A$2:$A$8,Sheet1!A2)首先用COUNTIF函数统计表1的姓名在表2中有没有出现过,有出现就会返回出现的次数,如果没出现过就会返回0,然后用IF函数判断COUNTIF函数结果为0的就返回“不同”,否则返回""(空)
嗨!我是小螃蟹,如果您喜欢这篇教程,请帮忙点赞、转发和评论哦,感谢您的支持!