一つのブックの中に複数のシートがあり、それぞれのシートが一つだけ含むブックを作成するVBAです。
ブックの名前は、シートの名前とします。
Sub ExportSheetsToFiles()
Dim ws As Worksheet
Dim NewBook As Workbook
Dim FilePath As String
' 保存先フォルダを取得
FilePath = Application.DefaultFilePath & "\"
' 各シートを別ファイルに書き出し
For Each ws In ThisWorkbook.Sheets
ws.Copy ' 新しいワークブックにシートをコピー
Set NewBook = ActiveWorkbook
' ファイル名をシート名に設定して保存
NewBook.SaveAs FilePath & ws.Name & ".xlsx", FileFormat:=xlOpenXMLWorkbook
NewBook.Close SaveChanges:=False
Next ws
MsgBox "各シートが個別のファイルに書き出されました。" & vbCrLf & "保存先: " & FilePath, vbInformation
End Sub
