朧の.Netの足跡
問合せ先:support@oborodukiyo.info サイト内検索はこちら
エクセルVBA ブック内のシートを1枚だけ含むブックの作成





一つのブックの中に複数のシートがあり、それぞれのシートが一つだけ含むブックを作成する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










良いやや良い普通やや悪い悪い

投稿日時評価コメント