=RANK.EQ(B2,$B$2:$B$7)은 B2:B7의 값 중에서 B2의 위치를 가장 큰 값을 1등으로 하여 반환합니다. 가장 작은 값을 1등으로 하려면 세 번째 인수로 1을 더하세요: =RANK.EQ(B2,$B$2:$B$7,1).
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Sales | Rank (high = 1) | Rank (low = 1) |
| 2 | Ana | 4200 | 3 | 4 |
| 3 | Ben | 3100 | 5 | 2 |
| 4 | Cleo | 5600 | 1 | 6 |
| 5 | Dan | 2800 | 6 | 1 |
| 6 | Eve | 4900 | 2 | 5 |
| 7 | Finn | 3700 | 4 | 3 |
Cleo의 매출이 가장 높으므로 C열에서는 1등, D열에서는 6등입니다. Dan의 매출을 6000으로 바꾸면 모든 순위가 바뀝니다.
RANK.EQ 구문
=RANK.EQ(number, ref, [order])
number: 순위를 매길 값으로, 보통 같은 행의 셀입니다.ref: 순위를 매길 목록입니다. 수식을 아래로 채울 때 모든 행에서 같도록 절대 참조($B$2:$B$7)로 쓰세요.order: 생략하거나0이면 내림차순(가장 큰 값이 1),1이면 오름차순(가장 작은 값이 1)입니다.
ref 안의 텍스트와 빈 셀은 무시됩니다. number가 ref에 아예 없으면 RANK.EQ는 #N/A를 반환합니다.
RANK.EQ와 RANK.AVG는 Excel 2010에 나왔습니다. 이전 RANK 함수도 여전히 동작하며 RANK.EQ와 같은 결과를 냅니다. Google 스프레드시트에는 세 함수가 모두 있습니다.
동점: RANK.EQ와 RANK.AVG
값이 같을 때 RANK.EQ는 모두에게 같은 순위를 주고, 그 값들이 차지한 순위를 건너뜁니다. 스포츠 성적처럼 공동 2등이 두 명이면 다음은 4등입니다. RANK.AVG는 동점인 각 값에 그 값들이 함께 차지한 위치의 평균을 줍니다.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Score | RANK.EQ | RANK.AVG | Unique rank |
| 2 | Ana | 95 | 1 | 1 | 1 |
| 3 | Ben | 88 | 2 | 3 | 2 |
| 4 | Cleo | 88 | 2 | 3 | 3 |
| 5 | Dan | 76 | 5 | 5 | 5 |
| 6 | Eve | 88 | 2 | 3 | 4 |
| 7 | Finn | 64 | 6 | 6 | 6 |
Ben, Cleo, Eve가 88점으로 동점입니다. RANK.EQ는 세 명 모두에게 2를, Dan에게 5를 줍니다. RANK.AVG는 2, 3, 4등의 평균인 3을 줍니다.
E열은 목록 순서로 동점을 가릅니다. COUNTIF($B$2:B2,B2)는 맨 위부터 이 행까지 그 점수가 몇 번 나왔는지 셉니다(채울 때 범위의 끝만 움직입니다). 첫 번째 88은 0을, 두 번째는 1을, 세 번째는 2를 더하므로 1부터 6까지의 순위가 정확히 한 번씩 나옵니다. "3등은 누구인가" 같은 조회에 순위를 쓸 때는 이 방식을 쓰세요. 조회하려면 순위마다 하나씩이어야 하기 때문입니다.
그룹 안의 순위
RANKIF는 없습니다. 판매 담당자를 같은 지역 안에서만 순위 매기려면, 그 지역에서 더 많이 판 사람의 수를 세고 1을 더하세요:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Region | Sales | Rank in region |
| 2 | Ana | North | 4200 | 3 |
| 3 | Ben | South | 3100 | 3 |
| 4 | Cleo | North | 5600 | 1 |
| 5 | Dan | South | 2800 | 4 |
| 6 | Eve | North | 4900 | 2 |
| 7 | Finn | South | 3700 | 1 |
| 8 | Gia | North | 3900 | 4 |
| 9 | Hal | South | 3300 | 2 |
North는 Cleo가, South는 Finn이 1등입니다. Ana의 지역을 South로 바꾸면 North 순위의 빈자리가 메워지고 South에는 다섯 번째 사람이 생깁니다. 그룹 안에서 오름차순 순위를 매기려면 "<"&C2를 쓰세요. 동점은 RANK.EQ처럼 같은 순위를 받습니다. 여러 조건으로 세는 방법은 COUNTIFS 페이지에 더 있습니다.
순위로 상위 3명 보여 주기
순위 열은 "이 사람이 몇 등인가"에 답합니다. "1등은 누구인가"에 답하려면 순위를 조회하세요. C열에 중복 없는 순위가 있다면 =XLOOKUP(1,C2:C7,A2:A7)이 1등인 이름을 반환합니다(Excel 2019 이하에서는 =INDEX(A2:A7,MATCH(1,C2:C7,0))). 순위 열이 없어도 =LARGE(B2:B7,2)는 두 번째로 큰 값을 바로 반환하고, =SORTBY(A2:B7,B2:B7,-1)은 표 전체를 큰 값부터 나열합니다(Excel 2021 또는 Microsoft 365, SORT와 SORTBY 참고).
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Name | Sales | Rank | Place | Name | |
| 2 | Ana | 4200 | 3 | 1 | Cleo | |
| 3 | Ben | 3100 | 5 | 2 | Eve | |
| 4 | Cleo | 5600 | 1 | 3 | Ana | |
| 5 | Dan | 2800 | 6 | |||
| 6 | Eve | 4900 | 2 | |||
| 7 | Finn | 3700 | 4 |
C열은 동점 섹션의 중복 없는 순위이므로 동점 때문에 자리가 비는 일이 없습니다. F2부터 F4에는 Cleo, Eve, Ana가 나옵니다. Ana의 매출을 6000으로 바꾸면 Ana가 맨 위로 올라갑니다.
직접 해 보기: 가장 빠른 주자가 1등
| A | B | C | |
|---|---|---|---|
| 1 | Runner | Time | Rank |
| 2 | Ana | 58.4 | |
| 3 | Ben | 55.1 | |
| 4 | Cleo | 61.9 | |
| 5 | Dan | 53.7 | |
| 6 | Eve | 57.3 | |
| 7 | Finn | 60.2 |
직접 해 보세요: C2에서 B2:B7의 모든 기록 중 B2에 있는 Ana의 기록 순위를, 가장 빠른(가장 작은) 기록이 1등이 되도록 구하세요. 수식은 C7까지 아래로 채워지므로 목록에는 절대 참조를 쓰세요.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Student | Class | Score | Rank in class |
| 2 | Ana | Red | 81 | |
| 3 | Ben | Red | 92 | |
| 4 | Cleo | Blue | 77 | |
| 5 | Dan | Red | 69 | |
| 6 | Eve | Blue | 95 | |
| 7 | Finn | Red | 85 | |
| 8 | Gia | Blue | 88 |
직접 해 보세요: D2에서 Ana의 점수를 같은 반(B열) 학생들 사이에서만 순위 매기세요. 가장 높은 점수가 1등입니다. 수식은 D8까지 아래로 채워집니다.
흔한 실수: 상대 참조 범위
$ 기호가 없으면 수식을 채울 때마다 범위가 한 행씩 내려가므로, 각 행은 자기 행에서 시작하는 점점 줄어드는 목록과 비교됩니다. 순위가 그럴듯해 보이지만 틀립니다:
| A | B | C | |
|---|---|---|---|
| 1 | Name | Sales | Rank |
| 2 | Ana | 4200 | 3 |
| 3 | Ben | 3100 | 4 |
| 4 | Cleo | 5600 | 1 |
| 5 | Dan | 2800 | 3 |
| 6 | Eve | 4900 | 1 |
| 7 | Finn | 3700 | 1 |
C4를 클릭하면 범위가 B4:B9이므로 Cleo는 자기 행부터 아래에 있는 사람들하고만 비교됩니다. Cleo가 더 많이 팔았는데도 Eve가 1등으로 나오고, Finn은 자기 자신하고만 비교되므로 1등으로 나옵니다. C2를 =RANK.EQ(B2,$B$2:$B$7)로 바꾸면 열 전체가 바로잡힙니다. 커서가 범위 안에 있을 때 F4를 누르면 $ 기호가 붙습니다(Mac에서는 Cmd+T 또는 Fn+F4). 이유는 절대 참조에서 설명합니다.
자주 묻는 질문
엑셀에서 숫자의 순위는 어떻게 구하나요?
=RANK.EQ(B2,$B$2:$B$7)을 쓰고 아래로 채웁니다. 가장 큰 값이 1등입니다. 채울 때 범위가 움직이지 않도록 $ 기호를 붙여 두세요.
엑셀에서 작은 값부터 순위를 매기려면 어떻게 하나요?
세 번째 인수로 1을 줍니다: =RANK.EQ(B2,$B$2:$B$7,1). 달리기 기록, 가격처럼 가장 작은 값이 1등이어야 할 때 쓰세요.
RANK.EQ와 RANK.AVG의 차이는 무엇인가요?
동점일 때만 다릅니다. 두 값이 공동 2등이면 RANK.EQ는 둘 다 2, 다음 값은 4를 줍니다. RANK.AVG는 2등과 3등의 평균인 2.5를 둘 다에게 줍니다.
엑셀에서 중복 없이 순위를 매기려면 어떻게 하나요?
값이 나온 횟수를 누적으로 더합니다: =RANK.EQ(B2,$B$2:$B$7)+COUNTIF($B$2:B2,B2)-1. 동점인 두 값 중 첫 번째는 그 순위를 유지하고 두 번째는 다음 순위를 받습니다.
엑셀에서 그룹 안의 순위는 어떻게 구하나요?
같은 그룹에서 더 큰 값의 개수를 세고 1을 더합니다: =COUNTIFS($A$2:$A$9,A2,$C$2:$C$9,">"&C2)+1. RANKIF 함수는 없습니다.