VBAで自動化 プロパティ・メソッド解説

【VBA】FileFormatパラメータを使用してファイル形式を指定して保存する方法

Excel VBAでWorkbookオブジェクトのSaveAsメソッドを使用する際、FileFormatパラメータを指定することで、保存するファイルの形式を指定できます。これにより、様々なバージョンのExcelファイル形式(例えば、.xlsx、.xlsb、.xlsmなど)やその他の形式(CSV、PDFなど)でファイルを保存することが可能になります。

FileFormatパラメータの基本

SaveAsメソッドでFileFormatパラメータを使用する基本的な構文

ActiveWorkbook.SaveAs Filename:="YourFilePath\YourFileName.extension", FileFormat:=ファイル形式の定数

YourFilePath\YourFileName.extensionは保存したいファイルの完全なパスとファイル名を指します。ファイル形式の定数は、保存したいファイルの形式に対応するVBAの定数を使用します。

xlOpenXMLWorkbook(51)Excel Workbook(.xlsx)。マクロを含まない標準のワークブック形式。
xlOpenXMLWorkbookMacroEnabled(52)Excel Macro-Enabled Workbook(.xlsm)。マクロを含むワークブック形式。
xlExcel8(56)Excel 97-2003 Workbook(.xls)。旧バージョンのExcelファイル形式。
xlCSV(6)CSV(カンマ区切り値)ファイル形式。
xlExcel12(50)Excel Binary Workbook(.xlsb)。バイナリ形式のワークブックで、ファイルサイズが大きい場合に有効。

保存の使用例

.xlsx形式で保存
ActiveWorkbook.SaveAs Filename:="C:\YourFolderPath\YourFileName.xlsx", FileFormat:=xlOpenXMLWorkbook

.xlsm形式で保存
ActiveWorkbook.SaveAs Filename:="C:\YourFolderPath\YourFileName.xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled

.csv形式で保存
ActiveWorkbook.SaveAs Filename:="C:\YourFolderPath\YourFileName.csv", FileFormat:=xlCSV

-VBAで自動化, プロパティ・メソッド解説