SUMIFS 함수로 계정과목별 금액 집계하는 방법

월 결산을 준비하다 보면 ERP에서 내려받은 전표 데이터를 계정과목별로 다시 정리해야 하는 일이 자주 발생합니다.
소모품비가 얼마인지, 영업팀의 접대비는 얼마나 사용했는지, 특정 프로젝트에 발생한 외주비는 얼마인지 확인하려면 필요한 조건에 따라 금액을 집계해야 합니다.
거래 건수가 적다면 필터를 적용해 직접 계산할 수 있습니다. 그러나 매월 반복되는 업무라면 조건별 합계를 자동으로 계산하는 편이 효율적입니다.
이때 유용한 함수가 SUMIFS입니다.
이번 글에서는 SUMIFS 함수의 기본 구조부터 계정과목별 집계, 부서별 비용 분석, 날짜 조건 설정과 실무에서 자주 발생하는 오류까지 살펴보겠습니다.
SUMIFS 함수란?
SUMIFS 함수는 여러 조건을 만족하는 항목의 금액만 더하는 함수입니다.
예를 들어 전체 전표 자료에서 다음 조건에 해당하는 금액만 집계할 수 있습니다.
- 계정과목이 소모품비인 거래
- 영업팀에서 지출한 접대비
- 8월에 발생한 복리후생비
- 특정 프로젝트에서 발생한 외주가공비
- 특정 거래처의 미지급금
SUMIFS 함수의 기본 구조는 다음과 같습니다.
=SUMIFS(합계범위, 조건범위1, 조건1, 조건범위2, 조건2)
각 항목의 의미는 다음과 같습니다.
- 합계범위: 실제로 더할 금액이 입력된 범위
- 조건범위1: 첫 번째 조건을 확인할 범위
- 조건1: 첫 번째 조건의 내용
- 조건범위2: 두 번째 조건을 확인할 범위
- 조건2: 두 번째 조건의 내용
조건은 필요한 만큼 추가할 수 있습니다.
예를 들어 금액은 D열, 계정과목은 B열, 부서는 C열에 입력되어 있다면 다음과 같이 작성합니다.
=SUMIFS(D:D, B:B, “소모품비”, C:C, “관리팀”)
이 수식은 계정과목이 소모품비이면서 부서가 관리팀인 거래의 금액을 합산합니다.
예시 자료: ERP에서 내려받은 전표 데이터
다음과 같은 전표 자료가 있다고 가정해 보겠습니다.
| 날짜 | 계정과목 | 부서 | 금액 |
|---|---|---|---|
| 2026-08-03 | 소모품비 | 관리팀 | 150,000 |
| 2026-08-05 | 접대비 | 영업팀 | 300,000 |
| 2026-08-07 | 소모품비 | 영업팀 | 80,000 |
| 2026-08-10 | 복리후생비 | 관리팀 | 200,000 |
| 2026-08-12 | 접대비 | 영업팀 | 250,000 |
| 2026-08-14 | 소모품비 | 관리팀 | 120,000 |
| 2026-08-18 | 복리후생비 | 영업팀 | 180,000 |
엑셀에서는 날짜가 A열, 계정과목이 B열, 부서가 C열, 금액이 D열에 입력되어 있다고 가정합니다.
이 자료를 활용하면 계정과목별 또는 부서별 비용을 다양한 방식으로 집계할 수 있습니다.
계정과목별 금액 집계하기
먼저 소모품비 전체 금액을 계산해 보겠습니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “소모품비”)
이 수식은 B열에서 소모품비에 해당하는 거래를 찾고, 같은 행의 D열 금액을 더합니다.
계산 결과는 다음과 같습니다.
150,000 + 80,000 + 120,000 = 350,000원
따라서 소모품비 합계는 350,000원입니다.
같은 방식으로 접대비와 복리후생비도 집계할 수 있습니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “접대비”)
접대비 합계는 550,000원입니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “복리후생비”)
복리후생비 합계는 380,000원입니다.
조건이 하나뿐이라면 SUMIF 함수를 사용해도 됩니다. 다만 이후 부서나 기간 조건을 추가할 예정이라면 처음부터 SUMIFS로 작성해 두는 편이 편리합니다.
셀을 참조해 계정과목별 집계표 만들기
계정과목명을 수식에 직접 입력하면 항목이 늘어날 때마다 수식을 수정해야 합니다.
실무에서는 계정과목이 입력된 셀을 참조하는 방식이 효율적입니다.
예를 들어 F열에 집계할 계정과목을 입력하고 G열에 합계를 표시한다고 가정해 보겠습니다.
| F열: 계정과목 | G열: 금액 |
| 소모품비 | |
| 접대비 | |
| 복리후생비 |
G2셀에 다음 수식을 입력합니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, F2)
이후 G2셀의 수식을 아래로 복사하면 각 계정과목에 해당하는 금액이 자동으로 계산됩니다.
결과는 다음과 같습니다.
| 계정과목 | 금액 |
| 소모품비 | 350,000 |
| 접대비 | 550,000 |
| 복리후생비 | 380,000 |
여기서 $D$2:$D$8 과 $B$2:$B$8 은 절대참조입니다.
수식을 아래로 복사해도 원본 데이터의 범위가 달라지지 않도록 고정한 것입니다.
반면 F2는 상대참조이므로 수식을 복사하면 F3, F4로 변경됩니다. 덕분에 각 행에 입력된 계정과목에 맞춰 금액이 집계됩니다.
부서별 계정과목 금액 집계하기
이번에는 특정 부서에서 사용한 특정 계정과목의 비용을 계산해 보겠습니다.
예를 들어 영업팀의 접대비를 집계하려면 다음과 같이 작성합니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “접대비”, $C$2:$C$8, “영업팀”)
이 수식은 두 가지 조건을 모두 만족하는 금액을 더합니다.
첫 번째 조건은 계정과목이 접대비인 거래이고, 두 번째 조건은 부서가 영업팀인 거래입니다.
계산 결과는 다음과 같습니다.
300,000 + 250,000 = 550,000원
관리팀의 소모품비는 다음과 같이 계산할 수 있습니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “소모품비”, $C$2:$C$8, “관리팀”)
결과는 270,000원입니다.
150,000 + 120,000 = 270,000원
이처럼 SUMIFS는 계정과목과 부서를 동시에 고려해야 하는 팀별 손익자료나 부서별 예산관리 자료에 유용합니다.
다만 정확한 부서별 집계를 위해서는 원본 전표의 부서 정보가 일관되게 입력되어 있어야 합니다. 부서가 누락되었거나 같은 부서가 서로 다른 이름으로 입력되어 있다면 결과도 정확하지 않습니다.
부서별·계정과목별 집계표 만들기
부서별 비용을 한눈에 확인하려면 계정과목을 세로로, 부서를 가로로 배치해 집계표를 만들 수 있습니다.
| 계정과목 | 관리팀 | 영업팀 | 합계 |
| 소모품비 | 270,000 | 80,000 | 350,000 |
| 접대비 | 0 | 550,000 | 550,000 |
| 복리후생비 | 200,000 | 180,000 | 380,000 |
| 합계 | 470,000 | 810,000 | 1,280,000 |
예를 들어 F열에 계정과목, G1셀에 관리팀, H1셀에 영업팀을 입력했다면 G2셀에는 다음 수식을 작성합니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, $F2, $C$2:$C$8, G$1)
이 수식은 아래와 오른쪽 복사할 수 있습니다.
$F2는 F열을 고정하므로 오른쪽으로 복사해도 계정과목 기준이 유지됩니다.
G$1은 1행을 고정하므로 아래로 복사해도 부서명이 있는 행을 계속 참조합니다.
이러한 방식은 팀별 비용 분석, 부서별 예산 대비 실적 관리, 프로젝트별 원가 집계표 작성에도 응용할 수 있습니다.
특정 기간의 계정과목 금액 집계하기
월 결산에서는 특정 월에 발생한 비용만 따로 집계해야 하는 경우가 많습ㄴ디ㅏ.
예를 들어 2026년 8월에 발생한 소모품비만 계산하려면 날짜 조건을 추가합니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, “소모품비”, $A$2:$A$8, “>=”&DATE(2026,8,1), $A$2:$A$8, “<“&DATE(2026,9,1))
이 수식은 다음 조건을 모두 만족하는 금액을 더합니다.
- 계정과목이 소모품비
- 거래일자가 2026년 8월 1일 이상
- 거래일자가 2026년 9월 1일 미만
종료일을 ‘8월 31일 이하’가 아니라 ‘9월 1일 미만’으로 설정하면 날짜에 시간이 함께 저장된 자료도 안정적으로 포함할 수 있습니다.
예를 들어 2026-08-31 15:30 이라는 값은 8월 31일 자정과 같지 않으므로, 종료 조건을 잘못 설정하면 집계에서 제외될 수 있습니다.
보고서에 시작일과 종료일을 별도 셀에 입력해 관리한다면 셀 참조 방식으로 작성할 수도 있습니다.
=SUMIFS($D$2:$D$8, $B$2:$B$8, F2, $A$2:$A$8, “>=”&H1, $A$2:$A$8, “<“&I1)
위 수식에서 H1은 시작일이고, I1은 집계 기간의 다음 날 또는 다음 달 첫날입니다.
프로젝트별 원가 집계에도 활용할 수 있다
전표 자료에 프로젝트 코드가 추가되어 있다면 프로젝트별 원가도 집계할 수 있습니다.
예를 들어 E열에 프로젝트 코드가 입력되어 있다면 다음과 같이 작성합니다.
=SUMIFS($D$2:$D$100, $B$2:$B$100, “외주가공비”, $E$2:$E$100, “P-001”)
이 수식은 프로젝트 코드가 P-001 이면서 계정과목이 외주가공비인 금액을 합산합니다.
다음과 같은 자료에도 응용할 수 있습니다.
- 프로젝트별 외주비
- 프로젝트별 재료비
- 프로젝트별 출장비
- 사업부별 판매관리비
- 거래처별 매출액
- 제품별 생산원가
단, 프로젝트 코드가 없는 공통비는 해당 수식만으로 합리적으로 배분할 수 없습니다.
공통비를 프로젝트별 손익에 반영하려면 매출액, 투입시간, 인원수 등 별도의 배부 기준을 정해야 합니다. 집계 함수는 이미 구분된 자료를 더하는 도구이지, 분류되지 않은 비용을 자동으로 판단하는 기능은 아닙니다.
SUMIFS 함수가 맞지 않을 때 확인할 사항
수식을 제대로 작성한 것 같은데 결과가 0으로 나오거나 ERP 금액과 차이가 발생한다면 원본 데이터를 먼저 점검해야 합니다.
1. 계정과목명에 공백이 포함된 경우
예를 들어 한 자료에는 ‘소모품비’라고 입력되어 있지만 다른 자료에는 ‘소모품비 ‘처럼 뒤에 공백이 포함되어 있을 수 있습니다.
눈으로 보기에는 같아 보여도 엑셀은 서로 다른 값으로 인식합니다.
불필요한 공백은 TRIM 함수로 정리할 수 있습니다.
=TRIM(B2)
다만 웹이나 ERP에서 내려받은 자료에 특수 공백이 포함되어 있다면 TRIM만으로 해결되지 않을 수 있으므로 원본 값을 추가로 확인해야 합니다.
2. 금액이 숫자가 아니라 문자로 저장된 경우
금액이 문자 형식으로 저장되어 있으면 SUMIFS에서 정상적으로 합산되지 않을 수 있습니다.
특히 ERP에서 내려받은 자료에 쉼표나 공백이 포함되어 있거나 복사 과정에서 형식이 변경된 경우 자주 발생합니다.
이때는 다음과 같은 수식으로 숫자 형식으로 변환할 수 있습니다.
=VALUE(D2)
변환한 결과가 실제 숫자인지 확인한 후 합계 범위로 사용하는 것이 좋습니다.
3. 날짜가 실제 날짜 형식이 아닌 경우
화면에 2026-08-01로 표시되더라도 실제로는 날짜가 아니라 문자로 저장되어 있을 수 있습니다.
이 경우 날짜 조건을 적용하면 예상한 결과가 나오지 않습니다.
날짜 자료가 엑셀에서 실제 날짜로 인식되는지 확인해야 합니다.
필요하다면 DATEVALUE 함수를 사용해 변환할 수 있습니다.
=DATEVALUE(A2)
다만 원본의 날짜 표시 형식과 엑셀 환경에 따라 변환 결과가 달라질 수 있으므로 일부 자료를 먼저 확인하는 것이 안전합니다.
4. 범위의 크기가 서로 다른 경우
합계 범위와 조건 범위는 행의 개수가 같아야 합니다.
예를 들어 다음 수식은 범위의 크기가 다릅니다.
=SUMIFS(D2:D100, B2:B90, “소모품비”)
D2와 B2는 포함하는 행 수가 다르기 때문에 오류가 발생합니다.
다음과 같이 동일한 크기로 수정해야 합니다.
=SUMIFS(D2:D100, B2:B100, “소모품비”)
5. 조건에 사용한 명칭이 원본과 다른 경우
보고서에는 ‘영업팀’이라고 입력했는데 원본 데이터에는 ‘영업1팀’ 또는 ‘영업부’라고 입력되어 있다면 정확히 일치하지 않습니다.
계정과목이나 부서 명칭이 여러 방식으로 관리되고 있다면 집계 전에 기준을 통일해야 합니다.
여러 부서를 하나의 기준으로 묶어 분석하려면 별도의 부서 매핑표를 작성한 후 XLOOKUP 등으로 표준 부서명을 연결하는 방법도 있습니다.
6. 집계 범위에 새로 추가한 데이터가 포함되지 않은 경우
수식을 $D$2:$D$100 으로 설정했는데 원본 데이터가 120행까지 늘어났다면 101행부터 120행까지의 금액은 집계되지 않습니다.
자료가 계속 추가되는 파일이라면 원본 데이터를 엑셀의 표 기능으로 관리하는 방법도 고려할 수 있습니다.
표로 지정한 데이터는 새로운 행이 추가될 때 참조 범위가 함께 확장되므로, 월별 반복업무에서 누락을 줄이는데 도움이 됩니다.
집계표를 만든 후에는 합계 검증이 필요하다
계정과목별 또는 부서별 집계표가 완성되었다고 해서 바로 보고자료로 사용하는 것은 위험합니다.
집계표의 전체 합계와 원본 데이터의 합계가 같은지 반드시 확인해야 합니다.
예를 들어 원본 전표 금액이 1,280,000원인데 부서별 집계표의 합계가 1,100,000원이라면 180,000원이 누락된 것입니다.
차이가 발생했다면 다음 항목을 확인해 보세요.
- 부서가 입력되지 않은 거래가 있는지
- 계정과목명이 다르게 입력된 거래가 있는지
- 집계 기간에서 제외된 거래가 있는지
- 금액이 문자 형식으로 저장되어 있는지
- 수식 범위에 모든 거래가 포함되어 있는지
- 합계가 중복으로 집계된 항목은 없는지
실무에서는 보고서에 ‘미분류’ 또는 ‘부서 미지정’ 항목을 별도로 만들어 누락된 거래를 확인하는 방법도 유용합니다.
중요한 것은 수식이 계산되었다는 사실보다, 최종 금액이 실제 원장과 일치하는지 검증하는 과정입니다.
마무리
SUMIFS 함수는 회계담당자가 계정과목별 금액을 집계하고, 부서별 비용을 분석하며, 특정 기간이나 프로젝트의 실적을 정리할 때 활용할 수 있는 함수입니다.
기본 구조를 이해하면 조건을 추가해 다양한 보고자료로 확장할 수 있습니다.
다만 함수만으로 정확한 자료가 만들어지는 것은 아닙니다. 계정과목, 부서, 거래일자, 프로젝트 코드가 일관된 기준으로 관리되어야 하고, 집계 결과를 원본 자료와 비교하는 검증 과정도 필요합니다.
처음에는 계정과목 하나를 집계하는 수식부터 시작해 보세요. 이후 부서와 기간 조건을 추가하면 월 결산자료와 관리회계 보고서 작성에도 자연스럽게 활용할 수 있습니다.
