관리회계 - SUMIF에 C:C 를 쓰면 안 되는 이유
관리회계 파일은 매달 같은 양식으로 돌아간다. 수식은 한 번 잘 짜두면 몇 년을 쓴다. 그래서 조건 범위를 열 전체로 잡는 습관이 생긴다. $C:$C로 걸어두면 원천 데이터가 몇 행이 되든 알아서 잡히니까 편하다.
그러다 어느 달, 합계가 조금 커진다. 오류 표시는 없다.
결론
$C:$C 가 아니라 $C$6:$C$182 로 쓴다.
왜 오류 표시가 나지 않는가
SUMIF가 열 전체를 훑는다는 건, 그 열에 있는 모든 것을 본다는 뜻이다. 문제는 관리회계 원천 시트가 대개 한 덩어리가 아니라는 데 있다.
위쪽에는 계정별 실적이 있고, 아래쪽에는 배부 후 재집계 블록이 따로 붙어 있다. 검증용 대사 블록이 더 아래에 있기도 하다. 같은 시트 안에 성격이 다른 표가 두세 개 들어앉아 있는 구조다.
이때 위쪽 실적 블록에 판관비라는 계정이 있고, 아래쪽 재집계 블록에도 판관비라는 줄이 있으면, 열 전체를 조건으로 잡은 수식은 둘 다 더한다.
=SUMIF($C:$C, "판관비", $F:$F)
→ 위아래 두 블록을 다 센다
=SUMIF($C$6:$C$182, "판관비", $F$6:$F$182)
→ 실적 블록만 센다
여기서 무서운 건 결과가 #N/A도 #VALUE!도 아니라는 점이다. 숫자가 그냥 커진다. 엑셀의 오류 검사는 아무것도 잡아내지 못한다. 오류 셀 0개인데 답이 틀린 상태가 된다.
그리고 이 함정은 처음부터 터지지 않는다. 원천 시트에 재집계 블록이 나중에 추가되는 날, 몇 달 잘 돌던 수식이 조용히 두 배를 세기 시작한다.
어떻게 걸렸나
먼저 숫자가 이상했다. 배부 결과를 보는데 특정 항목이 전월보다 눈에 띄게 커져 있었다. 비율로 봤을 때 나올 수 없는 수준이었다 (매출 대비 판관비율 같은 것)
그래서 역추적했다. 합계에서 시작해 그 숫자를 만든 수식으로, 다시 그 수식이 참조하는 원천으로 거슬러 올라갔다.
그다음이 결정적이었다. 전월과 전전월 파일을 나란히 놓고 같은 셀을 비교했다. 여기서 성격이 갈린다.
| 세 달치를 비교하면 | 판정 |
|---|---|
| 세 달 다 비슷하다 | 원래 그런 항목이다 |
| 이번 달만 튄다 | 실제 변동이거나 수식 사고다 |
| 이번 달만 튀는데 특정 항목 하나만큼 크다 | 중복 집계다 |
세 번째였다. 차이가 재집계 블록의 그 줄과 정확히 일치했다. 그 시점에 원인이 확정됐다.
핵심은 비교 대상을 두 달치로 잡았다는 것이다. 전월 하나만 봤으면 이번 달에 늘었나 보다로 넘어갔을 수 있다. 두 달을 보면 그게 추세인지 사고인지가 드러난다.
그래서 어떻게 쓰나
- 조건 범위에 열 전체를 쓰지 않는다. 데이터 행만 한정한다
- 시트 하나에 표 하나. 재집계·검증 블록은 시트를 분리한다
- 블록을 못 나누면 계정명에 구분 접두어를 붙인다 (
실적_판관비,재집계_판관비) - 행이 늘어나는 게 걱정되면 표 서식으로 지정하고 구조적 참조를 쓴다
- 물려받은 파일은
Ctrl+F로:$를 찾아 열 전체 참조를 먼저 훑는다
마지막 항목이 실전에서 제일 자주 쓰인다. 인수인계 받은 파일이라면 여기서부터 시작하는 게 빠르다.