码迷,mamicode.com
首页 > 其他好文 > 详细

按照行数分割excel

时间:2015-11-16 09:26:33      阅读:523      评论:0      收藏:0      [点我收藏+]

标签:

本来是想通过NOPI自己编写个小工具分割excel的,但是不想去研究API,就百度了一下,找了很久,有几个软件说是为了这个功能而生,实际上要么不能使用,要么出错,所以暂时没有公开可用的软件。

然后我就继续搜索,在百度上,有位高人使用VBA提供了此解决方案。

Sub cfb()
Dim r, c, i, WJhangshu, WJshu, bt As Long
r = Range("A" & Rows.Count).End(xlUp).Row
c = Cells(1, Columns.Count).End(xlToLeft).Column
bt = 1 标题行数
WJhangshu = 190 每个文件的行数
WJshu = IIf(r - bt Mod 190, Int((r - bt) / WJhangshu), Int((r - bt) / WJhangshu) + 1)
For i = 1 To WJshu
    Workbooks.Add
    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Format(i, String(Len(WJshu), 0)) & ".xls"
    Application.DisplayAlerts = True
    ThisWorkbook.ActiveSheet.Range("A1").Resize(bt, c).Copy ActiveSheet.Range("A1")
    ThisWorkbook.ActiveSheet.Range("A" & bt + i * WJhangshu + 1).Resize(WJhangshu, c).Copy _
     ActiveSheet.Range("A" & bt + 1)
    ActiveWorkbook.Close True
Next
End Sub

 

但是这个方法也有弊端:分割的文档数量少第一个,前190行(设定的行数)没有单独分出来,需要再手动分割一下。

 

按照行数分割excel

标签:

原文地址:http://www.cnblogs.com/jiujian/p/4968042.html

(1)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!