[257회 라이브 공지] 이번 주 라이브는 `3/4(수) 오후 8시` 에 진행합니다! 오빠두엑셀 `2026 무료 챌린지` 오픈! 완주하고 수료증 받아가세요! 5년 연속 IT분야 베스트셀러! 「 진짜쓰는 실무엑셀 」로 2026년 공부 끝내기 엑셀이 막히셨나요? Q&A 게시판에서 바로 해결하세요.
메뉴
수학 및 삼각
SUBTOTAL 함수
엑셀 2003
수학 및 삼각
SUBTOTAL 함수
엑셀-SUBTOTAL-함수-사용법
함수 요약

엑셀 SUBTOTAL 함수는 필터링 된 데이터의 부분 합계를 계산하는 함수입니다.

함수 구문
=SUBTOTAL(계산방식, 범위1, [범위2], ...)
계산방식
-
SUBTOTAL 함수로 계산할 방식입니다.
  • 주로 합계(109 또는 9), 개수(103 또는 3)을 사용합니다.
  • 전체 계산 방식은 아래 정리해드린 표를 참고하세요.
범위1
-
SUBTOTAL 함수로 계산할 범위입니다.
범위2
-
[선택인수]SUBTOTAL 함수로 계산할 두번째 범위입니다.
  • 최대 254개의 범위를 설정할 수 있습니다.
상세 설명

엑셀 SUBTOTAL 함수는 필터링 후 화면에 보이는 데이터의 부분 합계를 계산하는 함수입니다. 이 함수는 합계, 평균, 개수, 최대값 등 다양한 계산 방식을 제공하여 데이터 분석에 유용하게 사용됩니다. 특히, 숨겨진 셀을 제외하고 화면에 보이는 범위만 집계할 수 있어, 동적인 보고서를 작성할 때 효과적입니다.

=SUBTOTAL(109,A2:A100)
/ / A2:A100 범위에서 필터링 후 보이는 셀의 합계를 계산합니다.
=SUBTOTAL(103,B2:B100)
/ / B2:B100 범위에서 필터링 후 보이는 셀의 개수를 구합니다.

실무에서는 주로 필터링된 데이터의 합계(109)나 개수(103)를 구하는 데 많이 사용됩니다. 예를 들어, 특정 부서 및 지역의 매출 합계를 구하거나, 조건에 맞는 직원 수를 계산할 때 사용할 수 있습니다.


SUBTOTAL 함수 간단 예제
1) 필터링된 데이터의 매출 합계 계산하기

D2:D100 범위에 매출 데이터가 작성된 경우, 다음과 같이 함수를 작성하면 필터링 된 범위의 매출 합계를 구할 수 있습니다.

=SUBTOTAL(109,D2:D100)
/ / 필터링 후, D2:D100 범위에서 보이는 셀의 합계를 구합니다.
2) 필터링 된 부서의 직원 수 구하기

다음과 같이 SUBTOTAL 함수를 작성하면, 필터링 된 범위의 값 개수를 구할 수 있습니다.

=SUBTOTAL(103,A2:A200)
/ / A2:A100 범위에서 필터링 후 보이는 셀의 개수를 구합니다.

SUBTOTAL 함수 상세 가이드
1) SUBTOTAL 계산 방식

SUBTOTAL 함수의 계산 방식은 다음과 같습니다. 실무에서는 주로 103(개수)와 109(합계)를 사용합니다.

함수 필터링 된 범위 제외
(숨겨진 셀은 포함)
필터링, 숨겨진 셀
모두 제외
AVERAGE (평균) 1 101
COUNT (숫자 개수) 2 102
COUNTA (값 개수) 3 103
MAX (최대값) 4 104
MIN (최소값) 5 105
PRODUCT (곱셈) 6 106
STDEV (표준집단 표준편차) 7 107
STDEVP (모집단 표준편차) 8 108
SUM (합계) 9 109
VAR.S (표본집단 분산) 10 110
VAR.P (모집단 분산) 11 111

그 외 주의사항

계산 방식으로 1~11 사이의 값을 지정하면, 숨겨진 셀을 포함한 부분 합계가 계산됩니다. 숨겨진 셀을 제외하려면 101~111 사이의 값을 지정합니다.

SUBTOTAL 함수는 세로로 입력된 데이터에 최적화되어 있습니다. 가로로 입력된 데이터에서는 열을 숨겨도 함수에 영향을 미치지 않습니다.

자동필터로 숨겨진 셀 (행의 머릿글이 파란색)은 계산 결과에서 항상 제외됩니다.

범위가 중첩될 경우, 중복된 부분은 한 번만 계산됩니다.


댓글 24
4.9 (14개 평가)
마커맨
마커맨 2020.03.09 14:23
아! 이런 기능이 있었네요. 감사합니다.
산에서
산에서 2020.04.26 02:34
상당히 유용한 정보라 많이 배우고 있습니다. 위 예제문 30살이상....조건은 관계없는게 맞습니까?
오빠두엑셀
오빠두엑셀 작성자 2020.04.26 23:41
그... 그렇습니다!^^;
꼬무라기
꼬무라기 2021.06.13 12:42
너무 감사합니다
블랙애플
블랙애플 2021.12.22 19:30
많이 배워 갑니다.감사합니다 ^^
김현진
김현진 2022.03.22 17:41

subtotal은 세로로 입력된 데이터에서 동작되게 되었다고 말씀해주셨는데요! 반대로 가로로 입력된 데이터에 대해 보여지는 셀의 합만 계산해주는 함수가 있을까요? 아무리 찾아도 안보여 평소에 실무에서 많이 도움받고 있던 오빠두엑셀에 문의드립니다ㅠㅠ





오빠두엑셀
오빠두엑셀 작성자 2022.03.23 05:03
안녕하세요. SUBTOTAL은 세로방향으로만 동작합니다. 만약 가로방향으로 사용해야 할 경우, TRANSPOSE 함수로 범위를 강제 행/열 변환 후 SUBTOTAL을 적용하거나, 가로방향을 유지해야 할 경우 VBA를 사용하는 방법밖에는 없습니다. VBA를 사용하는 방법은 아래 게시글의 코드를 적절히 사용해서 수정해보세요. https://www.oppadu.com/question/?pageid=42&post_id=31265&bbspaged=1&uid=16240&mod=document
김혜진
김혜진 2022.08.25 16:39
계산방식 표 제목에서 필터링 된 범위 제외라는 말이 무슨 뜻인지 잘 모르겠습니다.---알았는데 댓글 삭제가 안되네요 ㅠㅠ
이붕재
이붕재 2022.11.24 16:40
필터를 한 상황에서 몇 개의 행을 숨기기 하여 보면 결과값이 9와 109가 같아지는데 같이 할 경우에는 이렇게 되는 것인가요?
오빠두엑셀
오빠두엑셀 작성자 2022.11.26 16:17
안녕하세요. 9는 필터링 된 범위만 집계에서 제외하기 때문에 필터링 후 범위를 숨기기 했을 시 옵션 9를 사용한 경우에는 결과가 변하지 않아야 합니다.^^ 한번 더 확인해보시겠어요? 감사합니다.
이붕재
이붕재 2022.11.29 08:11
답변 감사드립니다~~. 계속해도 필터링 한 후 숨기기를 하면 결과값이 둘다 같아집니다. ㅠ
필터링후
이붕재
이붕재 2022.11.29 08:12
그림
필터링+숨기기 후
오빠두엑셀
오빠두엑셀 작성자 2022.11.29 23:55
안녕하세요!^^ MS 공홈 함수설명에 답이 있었습니다. 필터를 적용할 경우, 함수 번호에 상관없이 필터링되거나 숨겨진행의 값을 모두 제외한다고 적혀있습니다. https://support.microsoft.com/ko-kr/office/subtotal-%ED%95%A8%EC%88%98-7b027003-f060-4ade-9040-e478765b9939 관련 함수 링크도 함께 적어드리니 한번 확인해보세요. 답변이 문제를 해결하시는데 도움이 되었길 바랍니다. 감사합니다.
Screenshot_1
이붕재
이붕재 2022.12.01 07:49
아...네..그러네요. 답변 정말 감사드립니다!!!
재미나게
재미나게 2023.06.27 18:28
공식홈페이지 링크 남겨주셔서 감사합니다. 덕분에 애매하던 부분을 확실히 이해했습니다.
재미나게
재미나게 2023.06.27 18:27
저도 같은 의문이 들어서 찾아보고 있었어요. 좋은 질문 감사합니다. ^^
도카단나
도카단나 2023.04.04 15:36
SUBTOTAL 함수로 필터링 된 표에서도 유동적으로 합계를 구할 수 있다는 걸 알게 되어 너무 좋습니다.
이양반
이양반 2023.07.14 15:58
표에서 행을 추가 할 때마다 번호가 자동으로 매겨질 방법이 없을까요?? subtotal를 이용하면 복사만 되더라구요
푸름이와아로하
푸름이와아로하 2023.09.01 21:22
정말 유용한 정보입니다 너무 잘 배웠습니다~