Excel VBAで現在開いているファイルを本日日付付きで保存する方法

Visual Basic

Excel VBAを使用して、現在開いているファイルを指定の場所に保存する方法について解説します。具体的には、現在開いているファイル名に本日日付を追加して、指定した場所に保存する方法を説明します。

目的:ファイル名に日付を追加して保存

本記事では、Excel VBAを使って、現在開いているファイルを特定のフォルダ(例:デスクトップ)に、本日日付を追加したファイル名で保存する方法を紹介します。

必要な準備

この手順を実行するためには、以下の準備が必要です。

  • Excel VBAが有効になっていること
  • Excelマクロファイル(.xlsm)が開いていること
  • 指定のフォルダ(例:C:\Users\ABC\Desktop)が存在すること

Excel VBAコードの作成

以下のVBAコードは、現在開いているExcelファイルを指定のフォルダに保存し、ファイル名に本日日付を追加するものです。具体的には、ファイル名が「a」の場合、「a2025.5.26.xlsm」として保存されます。

Sub SaveFileWithDate()
    Dim filePath As String
    Dim fileName As String
    Dim todayDate As String

    ' 現在開いているファイル名を取得
    fileName = ThisWorkbook.Name

    ' 本日日付を取得
    todayDate = Format(Date, "yyyy.m.d")

    ' 保存先のファイルパスを指定
    filePath = "C:\Users\ABC\Desktop\" & Left(fileName, Len(fileName) - 5) & todayDate & ".xlsm"

    ' ファイルを保存
    ThisWorkbook.SaveAs filePath
End Sub

このコードの解説。

  • fileName:現在開いているファイル名を取得します(拡張子を除く)。
  • todayDate:`Format(Date, “yyyy.m.d”)`を使って本日日付を「2025.5.26」の形式で取得します。
  • filePath:保存先のパスとファイル名を組み合わせ、`SaveAs`メソッドを使ってファイルを保存します。

コードの説明

上記のコードを実行すると、以下の動作が行われます。

  • 現在開いているExcelファイルの名前を取得します。
  • 本日日付を「yyyy.m.d」形式で取得します。
  • 指定されたフォルダ(デスクトップ)に、本日日付を追加した新しいファイル名で保存します。

セキュリティと実行時の注意点

Excel VBAを実行する前に、マクロが有効になっていることを確認してください。また、ファイルパスやアクセス権限に注意して、保存先フォルダが正しいことを確認してください。

このコードを使用することで、日々の作業を効率化でき、手動でファイル名に日付を追加する手間を省くことができます。

まとめ

Excel VBAを使って、現在開いているファイルを指定の場所に本日日付を付けて保存する方法を解説しました。日付をファイル名に追加することで、ファイルの管理がしやすくなり、作業効率が向上します。必要に応じてファイルパスをカスタマイズして、自分の環境に合わせた保存処理を行いましょう。

コメント

タイトルとURLをコピーしました