Ch.1 핵심 함수
SUMPRODUCT & DSUM — 조건부 집계
조건이 복잡해지면 SUMIF로는 부족하다
부서가 '영업부'이면서 직급이 '대리'인 사원의 급여 합계를 구해야 하는 상황
SUMIF는 조건 1개만 가능, SUMIFS도 복잡한 조합에서는 한계
SUMPRODUCT와 데이터베이스 함수는 다중 조건 집계의 핵심 도구입니다
핵심 내용
SUMPRODUCT는 배열끼리 곱한 뒤 합산하는 함수입니다. 이 원리를 조건 판별에 활용하면 다중 조건 집계가 가능합니다.
=SUMPRODUCT(배열1, 배열2, ...)
기본: 각 배열의 대응하는 요소를 곱한 뒤 합산
조건: (조건식) → TRUE=1, FALSE=0으로 변환하여 필터링핵심 트릭: (조건식)은 TRUE/FALSE → 곱하면 1/0이 됩니다. 조건에 맞는 행만 1, 나머지는 0이 되어 자동 필터링됩니다.
=SUMPRODUCT((B2:B5="영업부") * (C2:C5="대리") * D2:D5)
→ 영업부 AND 대리인 사원의 급여 합계SUMPRODUCT 조건 카운트: 값 범위 대신 1을 곱하면 개수를 셉니다. `=SUMPRODUCT((조건1)*(조건2)*1)` 또는 곱할 범위를 생략
SUMPRODUCT 조건부 합계 수식 추적
SUMPRODUCT 다중 조건 수식 추적
DSUM, DMAX, DAVERAGE는 별도 조건 범위를 사용하여 조건부 집계를 수행합니다. 1급 실기에서 매회 출제되며, 조건 범위 설정이 핵심입니다.
=DSUM(데이터베이스범위, 필드, 조건범위)
=DSUM(A1:D5, "급여", F1:G2)
=DSUM(A1:D5, 4, F1:G2) ← 4번째 열 = 급여조건 범위 작성 규칙: - 같은 행 = AND 조건 (모두 만족) - 다른 행 = OR 조건 (하나라도 만족) - 헤더는 데이터베이스 헤더와 정확히 동일해야 합니다
가장 많이 틀리는 포인트: 조건 범위의 헤더가 원본 테이블 헤더와 다르면 오류 없이 0 또는 잘못된 값이 반환됩니다!
DSUM과 완전히 같은 구문이며, 집계 함수만 다릅니다. 시험에서는 한 문제에 DSUM, DMAX, DAVERAGE가 동시에 출제되기도 합니다.
SUMPRODUCT에서 (B2:B5="영업부")의 결과는?
DSUM의 조건 범위에서 같은 행에 조건 2개를 적으면?
DSUM 조건 범위의 헤더가 원본 테이블 헤더와 다르면?
핵심 용어
데이터베이스범위
헤더를 포함한 전체 테이블 범위 (A1:D5)
필드
집계할 열 이름("급여") 또는 열 번호(4)
조건범위
별도 영역에 작성한 조건표 (헤더+조건값)
비교 정리
| 항목 | A: 이름 | B: 부서 | C: 직급 | D: 급여 |
|---|---|---|---|---|
| 김철수 | 영업부 | 대리 | 3,000,000 | |
| 이영희 | 인사부 | 과장 | 3,500,000 | |
| 박민수 | 영업부 | 대리 | 2,800,000 | |
| 정수진 | 영업부 | 과장 | 3,200,000 |
| 항목 | F: 부서 | G: 직급 |
|---|---|---|
| 영업부 | 대리 |
| 항목 | 함수 | 역할 | 구문 |
|---|---|---|---|
| DSUM | 조건부 합계 | DSUM(DB, "필드", 조건) | |
| DMAX | 조건부 최대값 | DMAX(DB, "필드", 조건) | |
| DAVERAGE | 조건부 평균 | DAVERAGE(DB, "필드", 조건) | |
| DCOUNT | 조건부 개수 | DCOUNT(DB, "필드", 조건) |
시각 자료
핵심 정리
- 1SUMPRODUCT: (조건1)*(조건2)*값범위 → 다중 조건 합계
- 2조건식은 TRUE=1, FALSE=0으로 자동 변환되어 필터링
- 3DSUM/DMAX/DAVERAGE: 별도 조건 범위 사용, 구문 동일
- 4조건 범위: 같은 행=AND, 다른 행=OR, 헤더 정확 일치 필수
- 5SUMPRODUCT=수식 내 완결, DB함수=조건 범위 별도 관리
퀴즈와 인터랙션으로 더 깊이 학습하세요
play_circle인터랙티브 레슨 시작