openshell 的个人博客 openshell 的个人博客

一天很长,但十年很短。

目录
Excel按行拆分成多个文件
/  

Excel按行拆分成多个文件

需求

公司有个数据查出来有七千多行,放在Excel里面非常难处理,眼睛都看花了。现在需要按行拆分,分成多个文件。

实现

打开开发工具之后,选择“查看代码”,输入下面代码。

Sub ZheFenSheet()

    Dim r, c, i, WJhangshu, WJshu, bt As Long
    r = Range("A" & Rows.Count).End(xlUp).Row
    b = InputBox("请输入分表行数")
    If IsNumeric(b) Then
           WJhangshu = Int(b)
        Else
            MsgBox "输入错误", vbOKOnly, "错误"
            End
    End If
    c = Cells(1, Columns.Count).End(xlToLeft).Column
    bt = 1 '标题行数
    'WJhangshu = 50 '每个文件的行数
    WJshu = IIf(r - bt Mod WJhangshu, Int((r - bt) / WJhangshu), Int((r - bt) / WJhangshu) + 1)
    
    '------
    Set fs = CreateObject("Scripting.FileSystemObject") '
    
    For i = 0 To WJshu
        Workbooks.Add
        Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & Format(i + 1, String(Len(WJshu), 0)) & "." & fs.GetExtensionname(ThisWorkbook.FullName)   '扩展名
        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

运行后输入行数即可,注意母文件一定要先保存。
image.png

转自:https://www.cnblogs.com/m0488/p/7998757.html


标题:Excel按行拆分成多个文件
作者:openshell
地址:http://blog.caiqz.cn/articles/2020/07/14/1594739615219.html