エクセルマクロで、ファイル名を日付で保存する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でワンランクアップできる書籍
具体的で応用が利く技をたくさん掲載
リンク