ExcelSMALLN번째 작은 값

엑셀 SMALL

범위에서 k번째로 작은 값을 반환합니다. 마라톤 도착 순서·BOTTOM N·이상치 검사의 표준

SMALL 수식 구조

=SMALL(범위, k)

범위 (array)

숫자 셀 범위. 텍스트·빈 셀은 무시. 단일 셀이나 배열 상수도 가능.

k (위치)

1부터 시작. k=1이면 최솟값(MIN과 동일), k=2면 2번째로 작은 값. 범위 개수보다 크면 #NUM!.

중복값은 각각 별도로 셈. [10, 10, 20]에서 SMALL(…, 2)는 10.

▸ 큰 쪽이 필요하면 짝꿍 함수 LARGE 사용.

▸ 0과 음수도 정상 처리. 빈 셀만 자동 제외 (텍스트는 무시).

직접 체험해보세요 — 마라톤 BOTTOM N

k 슬라이더로 1~8을 바꾸면 그 등수의 기록이 강조됩니다 — k=1은 최솟값(1등)과 같음

B10=SMALL(B2:B9, 1)
1

k=11번째로 작은 값 (마라톤이면 1등)

원본 데이터 (입력 순서, 단위: 분)

김민수
42.5
이영희
38.2
박철수
45.1
최유나
39.8
정한별
41.3
강은서
43.7
한지훈
37.5
오세진
40.6

오름차순 정렬 (SMALL 관점, 빠른 순)

1한지훈37.51등 (=MIN)
2이영희38.2
3최유나39.8
4오세진40.6
5정한별41.3
6김민수42.5
7강은서43.7
8박철수45.1

1번째로 작은 값 → 한지훈의 기록

37.5

SMALL vs LARGE

"작을수록 좋음"이냐 "클수록 좋음"이냐로 갈리는 대칭 짝꿍 — 시간·순위·결손값에는 SMALL, 점수·매출에는 LARGE

작은 쪽SMALL
=SMALL(B2:B9, 1) → 최솟값=SMALL(B2:B9, 3) → 3번째로 작은 값
  • k=1은 MIN과 동일
  • 마라톤·도착 순서 같은 "작을수록 좋음"
  • 이상치(최저값) 검사
큰 쪽LARGE
=LARGE(B2:B9, 1) → 최댓값=LARGE(B2:B9, 3) → 3번째로 큰 값
  • k=1은 MAX와 동일
  • 매출·점수 같은 "클수록 좋음"
  • TOP N 추출

실전 활용 예제

=SMALL(B2:B100, 1)

가장 빠른 시간(1등). MIN과 동일하지만 k를 명시해두면 'k=2로 바꾸기' 같은 확장이 쉬워짐.

예시: 마라톤 1등 기록37.5
=SUM(SMALL(B2:B100, {1,2,3}))

가장 작은 3개의 합계. {1,2,3} 배열 상수를 k에 넣어 한 번에 처리. BOTTOM N 합산의 핵심 트릭.

예시: 이상치(최저 3건) 합산1+2+3등 합
=SMALL(IF(A2:A100>0, A2:A100), 1)

0과 음수를 제외하고 최솟값. SMALL+IF 배열 패턴. 양수만 모인 데이터에서 "가장 작은 양수" 추출.

예시: 양수 중 최솟값0보다 큰 최솟값
=INDEX(A2:A100, MATCH(SMALL(B2:B100, 1), B2:B100, 0))

1등 주자의 이름을 가져옴. SMALL + MATCH + INDEX 콤보로 'k번째로 작은 값의 라벨' 추출.

예시: 1등 이름해당 행의 이름
더 알아보기

중복값이 있을 때 동작 방식

SMALL은 LARGE처럼 중복을 각각 셉니다. RANK와 다른 가장 큰 특징.

예: 데이터 = [10, 10, 20, 30]

  • SMALL(…, 1) = 10
  • SMALL(…, 2) = 10 ← 중복 10이 별도 카운트
  • SMALL(…, 3) = 20
  • SMALL(…, 4) = 30

중복을 제외한 "고유한 N번째"가 필요하면

=SMALL(UNIQUE(B2:B9), 3)

365·2021의 UNIQUE로 먼저 중복 제거 후 SMALL 적용

0이나 결손값을 건너뛰는 트릭

SMALL은 0과 음수도 정상 값으로 봅니다. "0 = 미입력"으로 처리하는 데이터에서는 의도와 다르게 0이 최솟값으로 잡힙니다.

패턴 — 양수만 대상

=SMALL(IF(B2:B100>0, B2:B100), 1)

365 동적 배열은 그냥, 이전 버전은 Ctrl+Shift+Enter로 배열 확정

패턴 — 특정 값 제외

=SMALL(IF(B2:B100<>0, B2:B100), 2)

0이 아닌 값들 중 2번째로 작은 값

SMALL로 데이터 정렬 흉내내기

SORT 함수가 없던 시절(2019 이하), SMALL + ROW 조합으로 동적 정렬을 구현했습니다.

셀에 수식 입력 후 아래로 복사

=SMALL($B$2:$B$100, ROW()-1)

D2에 입력 후 D11까지 채우면 오름차순 정렬된 결과. ROW()로 k 값을 자동 증가.

365의 모던 대안

=SORT(B2:B100)

한 셀에 입력하면 자동으로 spill — SMALL 트릭은 호환성 위주.

자주 묻는 질문 (FAQ)

Q. SMALL은 빈 셀을 어떻게 처리하나요?

빈 셀은 자동으로 무시합니다. 텍스트도 무시. 0은 정상 값으로 셈 (제외하려면 IF 결합 필요).

Q. k=1이면 MIN과 완전히 같나요?

네. 정확히 동일합니다. 가독성을 위해 단순 최솟값이면 MIN을 쓰는 것이 관례.

Q. 날짜에도 쓸 수 있나요?

네. 날짜는 내부적으로 숫자이므로 SMALL이 정상 동작. 가장 빠른 날짜 = SMALL(날짜범위, 1).

Q. 구글 스프레드시트에서도 동일한가요?

네. SMALL은 구글 시트에서도 같은 문법·동작입니다.