将 xls 文件拆分为小 xls 文件

将 xls 文件拆分为小 xls 文件

我想将sample.xlsx(包含 3 张)文件拆分为 3 个不同的 sheet1.xlsx sheet2.xlsx sheet3.xlsx文件,
我有 约翰·麦克纳马拉Perl 软件包存储库版本 = 2.37。
我正在添加解析 Excel 文件的示例代码

#!/usr/bin/perl

# Xls Parser : command : perl 
BEGIN {
    push (@INC,"/usr/local/buildpkgs/latest/perl");
}
use lib "/usr/local/buildpkgs/latest/perl/lib/site_perl/5.8.8";
use lib "/depot/perl-5.8.9/lib/site_perl/5.8.9";
use lib "/usr/local/buildpkgs/rev9/perl/ExcelWriter/lib/site_perl/5.8.3";

use Excel::Writer::XLSX;
use Spreadsheet::ParseExcel;
use Spreadsheet::ParseXLSX;
use Spreadsheet::WriteExcel;
use Spreadsheet::WriteExcel::Utility;


PS:这sample.xlsx不是 CSV 文件。

答案1

你可以运行这段代码,

Sub SaveSheets()
    Dim strPath As String
    Dim ws As Worksheet

    Application.ScreenUpdating = False

    strPath = ActiveWorkbook.Path & "\"
    For Each ws In ThisWorkbook.Sheets
        ws.Copy
        'Use this line if you want to break any links:
        BreakLinks Workbooks(Workbooks.Count)
        Workbooks(Workbooks.Count).Close True, strPath & ws.Name & ".xlsx"
    Next

    Application.ScreenUpdating = True
End Sub

Sub BreakLinks(wb As Workbook)
    Dim lnk As Variant
    For Each lnk In wb.LinkSources(xlExcelLinks)
        wb.BreakLink lnk, xlLinkTypeExcelLinks
    Next
End Sub

要运行代码,请执行以下操作:

  1. 打开 VBA 编辑器 ( Alt+ F11)
  2. 在左上角的树中,右键单击您的工作簿并插入一个新模块
  3. 将上面的代码复制到这个模块中
  4. 关闭 VBA 编辑器
  5. 在 Excel 中按Alt+F8运行宏并选择SaveSheets

如需更多帮助添加VBA

相关内容