Notice
Recent Posts
Recent Comments
Link
나만의공간
📘 엑셀 고급 강의 15‑4. UDF 응용 예제 – 실무 보고서 자동화 본문
📘 엑셀 고급 강의 15‑4. UDF 응용 예제 – 실무 보고서 자동화
이번 소주제에서는 앞서 배운 UDF를 실제 보고서에 적용하여, 조건별 자동값 계산, 대시보드 요약, 정렬 순위 처리 등 **실무 보고서 자동화 예제**를 만들어봅니다. User-Defined Function을 통해 반복 작업과 수식 복잡성을 줄일 수 있어 매우 유용합니다.
1. UDF 기반 요약 지표 함수 작성 예
Function SalesSummary(salesRng As Range) As Variant
Dim total As Double, maxVal As Double, minVal As Double
Dim cnt As Long
total = Application.WorksheetFunction.Sum(salesRng)
maxVal = Application.WorksheetFunction.Max(salesRng)
minVal = Application.WorksheetFunction.Min(salesRng)
cnt = Application.WorksheetFunction.Count(salesRng)
' 결과 배열 형태 반환 (총합, 최대, 최소, 개수)
SalesSummary = Array(total, maxVal, minVal, cnt)
End Function
- 예:
=SalesSummary(D2:D100)입력 시 자동 계산된 요약값을 배열로 반환 - 스필(SPILL) 방식 적용 시 여러 셀에 각각의 결과 표시 가능
2. 조건 기반 등급 매기기 & 순위 계산 UDF
Function TierAndRank(salesRng As Range, targetVal As Double) As Variant
Dim arr() As Variant, res() As Variant
Dim i As Long, n As Long
arr = salesRng.Value
n = UBound(arr, 1)
ReDim res(1 To n, 1 To 2)
For i = 1 To n
If arr(i, 1) >= targetVal Then
res(i, 1) = "Top"
Else
res(i, 1) = "Standard"
End If
res(i, 2) = WorksheetFunction.Rank(arr(i, 1), salesRng)
Next i
TierAndRank = res
End Function
- 예:
=TierAndRank(D2:D10, 150000)입력 시 첫 열: 등급, 두 번째 열: 순위 자동 표시 - 조건 기준을 변경하면 결과도 자동 갱신됨
3. 대시보드 자동화 흐름 통합 예
- ①
=SalesSummary함수를 통해 요약 통계 자동 계산 - ②
=TierAndRank함수로 등급과 순위 자동 병합 표시 - ③ FILTER, SORT 함수를 배열 결과와 함께 조합하여 자동 차트 원본 연결
- ④ 조건 입력 셀(B1, C1 등)에 값을 변경하면 대시보드 전체 갱신
4. 실무 팁 및 주의사항
- 반환 배열 크기와 셀 공간 확보 여부 확인 → SPILL 오류 방지
- UDF 이름과 설명을 문서에 함께 기록 → 협업 시 함수 이해도 높임
- 조건 변경 흐름이 많은 경우, 함수 내부 논리를 LET 함수나 VBA 로 분리해 가독성 확보
- 느린 계산이 반복될 경우, 사용자를 위한 버튼(매크로)으로 실행 흐름 제공
5. 요약 정리
- ✅ SalesSummary, TierAndRank 같은 응용 UDF는 복잡한 수식 대신 함수 하나로 요약 기능 구현
- ✅ 조건 입력값과 조합하면 대시보드 자동화 구현도 가능
- ✅ UDF의 유지보수성과 문서화, SPILL 관리가 실무 성공의 핵심입니다
'Excel > 고급' 카테고리의 다른 글
| 📘엑셀 고급 강의 2‑2. 슬라이서: 클릭으로 인터랙티브 필터 만들기 (0) | 2025.08.14 |
|---|---|
| 📘엑셀 고급 강의 2‑1. 고급 피벗 기능 소개: 슬라이서, 계산 필드, 그룹화란? (1) | 2025.08.14 |
| 📘 엑셀 고급 강의 15‑2. 다중 인수 UDF 및 배열 기반 결과 반환 실습 (0) | 2025.08.07 |
| 📘 엑셀 고급 강의 13‑4. 사용자 정의 함수(UDF) 기본 작성 실습 (0) | 2025.08.07 |
| 📘 엑셀 고급 강의 11‑3. Access 또는 SQL 데이터베이스 연결 실습 (0) | 2025.08.07 |
Comments
