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.xlsxCSVファイルではありません。

ベストアンサー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の追加

おすすめ記事