ブックをCSVファイルに変換するマクロを書いてみた

友人から以下のような依頼が来たのでVBAを書いてみました

フォルダ内のExcelのBookファイルをすべてCSV形式で保存したい
なにか早い方法はないか?

  • 参照ライブラリ
  • コード
Sub ChangeBookToCsv()
  Application.DisplayAlerts = False
  
  Dim Path As String
  Dim OutputPath As String
  Dim FSO As New FileSystemObject
  Dim TargetFile As String
  Dim CsvFile As String
  
  Path = "" ' Bookが保存されているフォルダのパス
  OutputPath = "" ' CSVファイルを保存したいフォルダのパス
  
  TargetFile = Dir(Path & "\*.xls*")
  
  Do While TargetFile <> ""
    CsvFile = Split(TargetFile, ".")(0) & ".csv"
    Workbooks.Open (Path & "\" & TargetFile)
    Sheets(1).Select
    ActiveWorkbook.SaveAs Filename:=Path & "\" & CsvFile, FileFormat:=xlCSV
    ActiveWindow.Close
    TargetFile = Dir()
  Loop
End Sub


もっと早い効率的な方法があれば共有していただけると嬉しいです。

最後までお読みいただきありがとうございました。