如何快速把一个Excel工作表的数据,每两行生成一个新的Excel表格?

就是比如一个表格有300行数据,我想每两行数据生成一个新的Excel表,一共生成150个表。有什么快速的方法吗?

用excel表格汇总分类能手 1.2版吧,在华军或霏凡有下载。我已经试过了,绝对可行。

将你的表参考下面添加一些辅助列(在软件中用辅助列1做拆分):

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-02-09
用vba很容易实现
Sub InsertSht()
For i = 1 To 300 '可以先把数改小点试试
Sheets("Sheet1").Select
Rows(i & ":" & (i + 1)).Copy
Sheets.Add
ActiveSheet.Paste
ActiveSheet.Name = i & "-" & (i + 1) '为了区分表是哪行的数,直接以行数命名表
i = i + 1
Next i
End Sub追问

好棒!试了下可行!非常感谢!不好意思再问一下,有没有办法把拆分的150个表格拆分为150个单独的excel表?因为试了下发现150个表是在一个excel工作簿上。还有就是命名的时候能否以第二,四,六,八...行第一列的数据依次作为表格名字,多谢!

追答

你是要生成150个工作薄?肯定可以啊,循环体里面的内容换下就成。
把 Sheets.Add 换成 Workbooks.Add 然后粘贴数据
ActiveSheet.Paste
工作表命名可以不用,ActiveSheet.Name = i & "-" & (i + 1)
文件名,用偶数行的A列,一定要保证命名合理,不能重复,不能有不能用的字符,工作表的命名也同,否则会出错的。
是工作簿的命名用偶数行的,还是工作表?如果是工作表就加上这句
ActiveSheet.Name = cells(2,1)
然后下面的工作薄名字另取好了,如果是工作薄就按下面的来。当然
filename="c:\" & cells(2,1) '因为复制过来了,第二行的第一格就是你要求的名字吧,暂时保存在c盘,路径可以自行修改,然后另存关闭。
ActiveWorkbook.SaveAs Filename:= filename, _
FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWindow.Close

本回答被提问者采纳
相似回答