Notice
Recent Posts
Recent Comments
Link
나만의공간
📘 엑셀 고급 강의 15‑1. 복잡 계산용 UDF 작성: 데이터 병합 및 정리 함수 구현 본문
📘 엑셀 고급 강의 15‑1. 복잡 계산용 UDF 작성: 데이터 병합 및 정리 함수 구현
이번 소주제에서는 여러 셀 또는 테이블의 데이터를 통합하거나 정리하는 **고급 사용자 정의 함수 (UDF)** 작성을 실습합니다. 예: 두 열의 데이터를 합치거나 조건부 병합, 특정 기준으로 그룹화 계산 등 반복 로직을 자동화할 수 있습니다.
1. 예제: 두 셀 결합 및 포맷된 문자열 반환
Function CombineCustomerName(firstName As String, lastName As String) As String
CombineCustomerName = UCase(lastName & ", " & firstName)
End Function
- A2에 "홍길동", B2에 "김" 입력 시 셀 C2에
=CombineCustomerName(A2, B2)입력 → “김, 홍길동” 반환 - 문자열 조작 및 포맷 처리가 필요한 보고서 자동화에 활용 가능
2. 조건 기반 데이터 정리 UDF 예제
Function CheckSalesTier(salesAmt As Double) As String
If salesAmt >= 200000 Then
CheckSalesTier = "Top"
ElseIf salesAmt >= 150000 Then
CheckSalesTier = "High"
Else
CheckSalesTier = "Standard"
End If
End Function
- 매출액 기준에 따라 세 등급 자동 분류
- 셀에
=CheckSalesTier(D2)입력 시 등급 자동 표시
3. 예외 처리 포함한 안전한 UDF 작성
Function SafeDivide(x As Double, y As Double) As Variant
On Error GoTo ErrHandler
If y = 0 Then
SafeDivide = CVErr(xlErrDiv0)
Else
SafeDivide = x / y
End If
Exit Function
ErrHandler:
SafeDivide = CVErr(xlErrValue)
End Function
- 나눗셈 시 **0으로 나눔 오류** 대비
- 오류 발생 시 Excel 표준 오류 메시지 반환
4. 실무 팁 및 주의사항
- ✅ UDF에서 Variant 타입 반환은 오류 메시지 처리에 유리합니다.
- ✅ 코드에 기본 예외 처리 구문 (
On Error) 포함 시 안정성 확보 - ✅ 함수 테스트용 데이터와 조건 조합을 준비해 정확성을 검증하세요.
- ✅ UDF는 워크북 전체에서 사용 가능하므로 함수명 충돌 없이 모듈별 정리 권장
5. 요약 정리
- ✅ 고급 UDF는 문자열 조합, 조건 분기, 안전 계산 등 복잡 로직도 자동화할 수 있습니다.
- ✅ 오류 처리 포함 UDF는 안정적인 자동 계산 도구가 됩니다.
- ✅ 실무에서는 여러 셀 계산, 그룹화, 조건부 표기 등에 고급 함수가 자주 필요합니다.
'Excel > 고급' 카테고리의 다른 글
| 📘 엑셀 고급 강의 16‑1. 시나리오 관리자 개요 및 기본 개념 이해 (0) | 2025.08.16 |
|---|---|
| 📘 엑셀 고급 강의 15‑3. UDF 예외 처리 및 성능 최적화 전략 (0) | 2025.08.16 |
| 📘 엑셀 고급 강의 14‑4. 이벤트 기반 자동 실행 및 UDF 응용 실습 (1) | 2025.08.16 |
| 📘 엑셀 고급 강의 14‑3. 루프 및 조건문을 활용한 자동화 흐름 구성 (0) | 2025.08.16 |
| 📘 엑셀 고급 강의 14‑2. VBA 변수 활용 및 사용자 상호작용 입력 처리 (0) | 2025.08.16 |
Comments
