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
コードを実行するには、次の手順を実行します。
- VBAエディタを開く(Alt+ F11)
- 左上のツリーでワークブックを右クリックし、新しいモジュールを挿入します。
- 上記のコードをこのモジュールにコピーしてください。
- VBAエディタを閉じる
- ExcelでAlt+を押してF8マクロを実行して選択します。
SaveSheets
さらに支援が必要な場合VBAの追加。