반응형

엑셀 VBA 자동화 (20편): 필요한 부분만 쏙! 선택 영역 별도 파일로 즉시 저장하기

방대한 인사 명부나 재무 시트에서 특정 팀의 데이터만 따로 저장해 보내야 할 때, 복사해서 새 파일을 만들던 번거로움을 클릭 한 번으로 해결하는 매크로를 배워봅니다.
EXCEL PRACTICAL GUIDE

VBA의 Workbooks.AddSaveAs 메서드를 활용하면 선택한 범위만 담긴 새 엑셀 파일을 즉시 생성할 수 있습니다.

1단계: VBA 모듈 삽입
Alt + F11을 누른 후 [삽입] - [모듈]을 클릭합니다.

2단계: 추출 저장 코드 작성
아래 코드를 복사하여 붙여넣으세요.

Sub SaveSelectedRangeToNewFile()
    Dim selectedRange As Range, newWorkbook As Workbook, savePath As Variant
    Set selectedRange = Selection
    savePath = Application.GetSaveAsFilename(InitialFileName:="추출데이터", FileFilter:="Excel Workbook (*.xlsx), *.xlsx")
    If savePath <> False Then
        Application.ScreenUpdating = False
        Set newWorkbook = Workbooks.Add
        selectedRange.Copy Destination:=newWorkbook.Sheets(1).Range("A1")
        newWorkbook.Sheets(1).Columns.AutoFit
        newWorkbook.SaveAs Filename:=savePath
        newWorkbook.Close
        Application.ScreenUpdating = True
        MsgBox "저장 완료!"
    End If
End Sub

3단계: 버튼 연결
도형을 그린 후 우클릭, [매크로 지정]으로 코드를 연결합니다.

💡 실무 팁
수식이 포함된 범위를 복사할 때는 '값으로 붙여넣기' 옵션을 사용하는 것이 데이터 오류를 방지하는 지름길입니다.
데이터 부분 발췌 자동화로 행정 업무의 보안과 효율을 동시에 잡아보세요.
반응형

+ Recent posts