728x90
반복작업에 시간 낭비하지 마세요!
실무에서 꼭 필요한 엑셀 매크로 기능을 정리했습니다. 파일 병합, 중복 제거, 자동 정렬, 조건별 복사 등 매일 반복하는 업무를 클릭 한 번으로 처리할 수 있어요.
📌 엑셀 매크로란?
엑셀 매크로는 **VBA(Visual Basic for Applications)**라는 언어를 기반으로 반복 작업을 자동화하는 기능입니다. 코딩 경험이 없어도 ‘기록’ 기능을 통해 쉽게 만들 수 있으며, 업무 시간을 획기적으로 단축시켜줍니다.
🛠 실무에서 유용한 엑셀 매크로 TOP 5
① 여러 엑셀 파일 한 시트에 병합하는 매크로
활용 예: 부서별 보고서 파일을 하나로 모을 때 유용
작동 방식: 지정 폴더 내 모든 .xlsx 파일의 첫 번째 시트를 하나의 통합 시트로 병합
Sub 파일병합()
Dim 폴더경로 As String
Dim 파일이름 As String
Dim 통합시트 As Worksheet
Dim 마지막행 As Long
Application.ScreenUpdating = False
Set 통합시트 = ThisWorkbook.Sheets(1)
폴더경로 = "C:\YourFolderPath\" ' 경로 수정 필수
파일이름 = Dir(폴더경로 & "*.xlsx")
Do While 파일이름 <> ""
If 파일이름 <> ThisWorkbook.Name Then
Workbooks.Open 폴더경로 & 파일이름
With ActiveWorkbook.Sheets(1)
마지막행 = 통합시트.Cells(Rows.Count, 1).End(xlUp).Row + 1
.UsedRange.Copy 통합시트.Cells(마지막행, 1)
End With
Workbooks(파일이름).Close False
End If
파일이름 = Dir
Loop
Application.ScreenUpdating = True
MsgBox "파일 병합 완료!"
End Sub
② 중복값 자동 제거 매크로
활용 예: 고객명단, 메일링 리스트 등에서 중복 제거할 때
Sub 중복제거()
Range("A1").CurrentRegion.RemoveDuplicates Columns:=1, Header:=xlYes
MsgBox "중복 제거 완료!"
End Sub
③ 자동 정렬 매크로
활용 예: 날짜순, 금액순 정렬 필요 시
Sub 자동정렬()
Range("A1").CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlYes
MsgBox "정렬 완료!"
End Sub
④ 특정 조건 행만 다른 시트로 복사
활용 예: "승인"된 데이터만 필터링할 때
Sub 조건복사()
Dim 원본 As Worksheet, 대상 As Worksheet
Dim i As Long, j As Long
Set 원본 = ThisWorkbook.Sheets("Sheet1")
Set 대상 = ThisWorkbook.Sheets("Sheet2")
j = 1
For i = 2 To 원본.Cells(Rows.Count, 1).End(xlUp).Row
If 원본.Cells(i, 3).Value = "승인" Then
원본.Rows(i).Copy 대상.Rows(j)
j = j + 1
End If
Next i
MsgBox "복사 완료!"
End Sub
⑤ 날짜별 파일 자동 저장 매크로
활용 예: 일일 보고서 자동 백업
Sub 자동저장()
Dim 파일명 As String
파일명 = "보고서_" & Format(Now(), "yyyymmdd_hhmmss") & ".xlsx"
ThisWorkbook.SaveCopyAs "C:\백업경로\" & 파일명
MsgBox "자동 저장 완료!"
End Sub
📂 시트별 파일 분리 매크로
Sub 시트별파일분리()
Dim ws As Worksheet
Dim 새통합문서 As Workbook
Dim 저장경로 As String
저장경로 = "C:\엑셀분리\" ' 👉 경로를 원하는 폴더로 수정하세요
If Right(저장경로, 1) <> "\" Then 저장경로 = 저장경로 & "\"
Application.ScreenUpdating = False
For Each ws In ThisWorkbook.Sheets
ws.Copy
Set 새통합문서 = ActiveWorkbook
Application.DisplayAlerts = False
새통합문서.SaveAs Filename:=저장경로 & ws.Name & ".xlsx", FileFormat:=xlOpenXMLWorkbook
새통합문서.Close SaveChanges:=False
Application.DisplayAlerts = True
Next ws
Application.ScreenUpdating = True
MsgBox "시트별 파일 분리 완료!"
End Sub
✅ 사용 방법
- 위 코드를 복사하여 Alt + F11 → VBA 편집기 → 새 모듈(Module)에 붙여넣기
- 저장경로에 원하는 폴더 경로 입력 (예: C:\Users\사용자명\Desktop\분리결과\)
- 매크로 실행 (Alt + F8 → 시트별파일분리 선택)
💡 각 시트는 개별 .xlsx 파일로 저장됩니다. 이름은 시트명으로 저장되며, 기존 파일이 있을 경우 덮어쓰기 주의!
엑셀 매크로는 단순 반복 작업을 줄이고, 실무 생산성을 높이는 데 매우 효과적입니다. 위에서 소개한 매크로만 잘 활용해도 업무 속도가 2배 이상 향상될 수 있어요. 참고하셔서 업무에 활용하세요!!
728x90
'직장인 꿀팁 모음' 카테고리의 다른 글
슬랙, 노션, 트렐로 비교: 어떤 협업툴이 나에게 맞을까? (1) | 2025.04.08 |
---|---|
엑셀 대량 데이터를 월별 중복 제거하는 방법 (0) | 2025.04.07 |
EPL 현재 순위 정리 (2024-25 시즌) : 프리미어 리그 우승 경쟁은? (0) | 2025.04.06 |
직장인 필수 통계 개념 정복하기 : 보고서도 분석도 더 똑똑하게 (0) | 2025.04.05 |
직장인을 위한 실무 SQL 활용법 (0) | 2025.04.03 |