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