본문 바로가기
업무 자동화

엑셀 VBA: 작업 중인 파일 자동으로 백업하기 (날짜·시간 저장)

by jungdabnote 2026. 1. 26.
반응형

직장인에게 가장 무서운 순간이 언제일까요.

3시간 넘게 작업한 엑셀 파일이
갑자기 “응답 없음”으로 멈췄을 때,
혹은 잘못 눌러서 덮어쓰기 저장을 해버렸을 때입니다.

그 순간 머릿속에는 딱 한 생각만 듭니다.

“아… 백업 좀 해둘걸.”

 

이미 늦었죠.
그래서 아예 후회할 일이 없게 만드는 매크로를 하나 만들어 뒀습니다.

오늘 소개할 매크로는
버튼 한 번만 누르면
현재 작업 중인 엑셀 파일을
날짜·시간이 찍힌 백업 파일로 자동 저장해 줍니다.


이런 백업 매크로가 왜 필요할까

엑셀에도 자동 저장 기능은 있지만,
솔직히 믿음직스럽지는 않습니다.

  • 원본을 그대로 덮어써 버리거나
  • 원하는 시점으로 되돌리기 어렵거나
  • “언제 저장된 건지” 헷갈릴 때도 많고요

이 매크로는 이런 문제를 해결해 줍니다.

  • 원본 파일은 그대로 유지
  • 복사본만 따로 백업
  • 파일명에 날짜·시간이 찍혀서
    → 언제든 원하는 시점으로 복구 가능

특히 마감 앞두고 작업할 때
이거 하나만 있어도 마음이 훨씬 편합니다.


백업 매크로는 이렇게 동작합니다

이 매크로의 흐름은 단순합니다.

  • 현재 작업 중인 엑셀 파일을 기준으로
  • 같은 폴더 안에 [Backup] 폴더를 자동 생성
  • 파일 이름 뒤에 날짜_시간을 붙여서
  • 백업 파일을 따로 저장

예를 들면 이런 식입니다.

 
보고서.xlsx → Backup\보고서_20250126_143015.xlsx

 

폴더 정리까지 알아서 해주니
나중에 백업 파일 찾기도 편합니다.


VBA 매크로 사용 방법

  1. 엑셀에서 Alt + F11 눌러 VBA 편집기 실행
  2. 상단 메뉴 [삽입] → [모듈] 클릭
  3. 아래 코드 그대로 복사해서 붙여넣기
  4. 엑셀로 돌아와 Alt + F8 → MakeBackupFile 실행

⚠️ 중요
아직 한 번도 저장하지 않은 새 파일은
백업할 수 없으니, 먼저 한 번 저장해 주세요.


날짜·시간 자동 백업 VBA 전체 코드

 
Sub MakeBackupFile()

    Dim CurrentWb As Workbook
    Dim FolderPath As String
    Dim BackupFolder As String
    Dim FileName As String
    Dim BackupName As String
    Dim Timestamp As String

    Set CurrentWb = ThisWorkbook

    ' 아직 저장되지 않은 파일이면 중단
    If CurrentWb.Path = "" Then
        MsgBox "파일을 먼저 저장한 후 실행해주세요.", vbExclamation
        Exit Sub
    End If

    ' 백업 폴더 경로
    FolderPath = CurrentWb.Path & "\"
    BackupFolder = FolderPath & "Backup\"

    ' Backup 폴더 없으면 생성
    If Dir(BackupFolder, vbDirectory) = "" Then
        MkDir BackupFolder
    End If

    ' 파일명 + 타임스탬프
    FileName = Left(CurrentWb.Name, InStrRev(CurrentWb.Name, ".") - 1)
    Timestamp = Format(Now, "yyyyMMdd_hhmmss")

    BackupName = BackupFolder & FileName & "_" & Timestamp & ".xlsx"

    ' 파일 사본 저장
    Application.DisplayAlerts = False
    CurrentWb.SaveCopyAs Filename:=BackupName
    Application.DisplayAlerts = True

    MsgBox "백업이 완료되었습니다." & vbCrLf & _
           "저장 위치: " & BackupName, vbInformation, "완료"

End Sub

더 편하게 쓰는 방법: 단축키 설정

이 매크로는
단축키로 만들어 두면 진짜 자주 쓰게 됩니다.

  1. 엑셀에서 Alt + F8
  2. MakeBackupFile 선택 후 [옵션] 클릭
  3. 바로 가기 키 설정
    (예: Ctrl + Shift + S 추천)

이제 작업하다가
“뭔가 불안하다…” 싶을 때
단축키 한 번 눌러주면 됩니다.


사용하면서 느낀 팁

  • 중요한 작업할 땐
    👉 수시로 눌러주는 습관이 최고입니다
  • 백업 파일은 용량이 조금 늘어날 수 있으니
    👉 작업 끝나면 정리 한 번 추천
  • 매크로가 들어간 파일이라면
    👉 확장자를 .xlsm으로 바꿔서 써도 됩니다

마무리

데이터는 직장인의 생명입니다.
한 번 날아가면, 시간도 멘탈도 같이 날아갑니다.

오늘 소개한 백업 매크로 하나만 있어도
“아… 망했다” 할 일은 확실히 줄어듭니다.

 

이 글로
엑셀 자동화 시리즈도 여기서 마무리입니다.

앞으로도
실무에서 바로 써먹을 수 있는
엑셀·업무 자동화 팁 있으면
틈틈이 정리해서 올려보겠습니다. 감사합니다!

반응형