アクティブブックのバックアップを作るマクロ


アクティブブックのバックアップファイルを作るマクロ

コード

Sub バックアップ作成()
    Dim originalFileName As String
    Dim backupFolder As String
    Dim backupFileName As String

    ' アクティブブックのファイル名を取得
    originalFileName = ActiveWorkbook.FullName

    ' バックアップを保存するフォルダを指定
    backupFolder = ThisWorkbook.Path

    ' バックアップファイル名を生成
    backupFileName = Left(originalFileName, InStrRev(originalFileName, ".")) & "バックアップ" & Format(Now, "yyyymmdd") & ".xlsx"
    
    'アクティブブックを閉じる
    ActiveWorkbook.Close
    
    ' ファイルをコピーしてバックアップを作成
    FileCopy originalFileName, backupFileName

    ' バックアップの作成が完了したことをユーザーに通知
    MsgBox backupFileName & " が作成されました。", vbInformation, "バックアップ完了"

End Sub

注意点

  • マクロが入ってるエクセルと別のエクセルのバックアップを取るコード
  • アクティブブックと同じ場所にバックアップが作成される(マクロが入ってるフォルダではない)
  • 他のコードと組み合わせて今後応用したい