【エクセルマクロ】ファイル名を日付で保存:使用例4選

vba-ファイル名を日付で保存-eyecatch ExcelVBA

エクセルマクロで、ファイル名を日付で保存するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

ファイル名を日付で保存(今日の日付)

以下のマクロを実行すると、ファイル名を本日の日付で保存します。


Sub ファイル名を日付で保存()

Dim FileName As Variant

    FileName = Format(Date, "yyyymmdd")

    ActiveWorkbook.SaveAs FileName:=ThisWorkbook.Path & "\" & FileName, _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub
マクロ実行後

ファイル名を今日の日付で自動保存します。

「サンプル.xlsm」を「20220910.xlsm」で別名保存します。

(今日が2022/9/10の場合の結果)


 
 

ファイル名を日付で保存(前日の日付)

以下のマクロを実行すると、ファイル名を昨日で保存します。


Sub ファイル名を日付で保存()

Dim FileName As String

    FileName = Format(Date - 1, "yyyymmdd")

    ActiveWorkbook.SaveAs FileName:=ThisWorkbook.Path & "\" & FileName, _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub
マクロ実行後

ファイル名を昨日の日付で自動保存します。

「サンプル.xlsm」を「20220909.xlsm」で別名保存します。

(今日が2022/9/10の場合の結果)


 
 

ファイル名を日付で保存(InputBox)

以下のマクロを実行すると、ファイル名をInputBoxで入力した日付で保存します。


Sub ファイル名を日付で保存()

Dim FileName As Variant

    'インプットボックスを表示
    FileName = Application.InputBox(prompt:="日付を入力してください", _
                                Title:="日付入力", _
                                Default:="2022/01/01")
                                
    If FileName <> "" Then
    
        FileName = Format(FileName, "yyyymmdd")

        ActiveWorkbook.SaveAs FileName:=ThisWorkbook.Path & "\" & FileName, _
            FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

    End If

End Sub
マクロ実行後

「日付入力」ダイアログが表示されるので、任意の日付を入力します。

初期値は [Default:=”2022/01/01″] で設定しています。


 

「InputBox」に入力した日付でファイルを保存します。

「サンプル.xlsm」を「20220515.xlsm」で別名保存します。


 
 

ファイル名を日付で保存(前月)

以下のマクロを実行すると、ファイル名を先月で保存します。


Sub ファイル名を日付で保存()

Dim FileName As String

    FileName = Format(DateAdd("m", -1, Date), "yyyymm")

    ActiveWorkbook.SaveAs FileName:=ThisWorkbook.Path & "\" & FileName, _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False

End Sub
マクロ実行後

ファイル名を前月で自動保存します。

「サンプル.xlsm」を「202208.xlsm」で別名保存します。

(今月が2022/9の場合の結果)


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】名前を付けて保存処理を自動化する使用例
 

【エクセルマクロ】名前を付けて保存処理を自動化:超便利8選
...

 

「プログラマーの本気がExcelを覚醒させる 超絶ExcelVBA」
ExcelVBAでワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載