
엑셀로 점수나 실적의 순위를 매기다 보면 아래로 채운 순위가 1, 1, 1처럼 엉망으로 나오거나, 같은 점수인 사람이 둘 다 1등이 되고 2등이 사라지거나, 부서별로 따로 순위를 내야 하는데 방법을 몰라 막히는 경우가 많습니다.
이 글에서는 RANK.EQ로 순위를 구하는 기본 수식부터 오름차순 순위, 동점자 처리(RANK.AVG, 순번 매기기), 부서별 순위까지 하나의 예시 표로 정리했습니다. 예시 수식의 결과는 직접 계산해 확인했습니다.
목차
1. 증상으로 원인 찾기
2. RANK.EQ 기본 사용법
3. 낮은 값이 1등인 오름차순 순위
4. 동점자 순위: RANK.EQ와 RANK.AVG
5. 동점 없이 순번 매기기
6. 부서별(그룹별) 순위 구하기
7. 순위가 이상하게 나올 때
8. 자주 하는 실수
9. 자주 묻는 질문
1. 증상으로 원인 찾기

아래 예시는 A1:C7에 이름, 부서, 점수가 있는 표입니다. 김민준(영업) 92, 이서연(영업) 85, 박지후(마케팅) 92, 최유나(마케팅) 78, 정하준(영업) 85, 강수아(마케팅) 88입니다. 증상별로 먼저 확인할 곳은 다음과 같습니다.
| 증상 | 원인 | 바로가기 |
|---|---|---|
| 아래로 갈수록 순위가 1, 2로 작아짐 | 순위 범위를 $로 고정하지 않음 | 7번 |
| 점수가 가장 낮은 사람이 1등 | order 인수에 1을 넣음 | 3번 |
| 같은 점수가 같은 순위, 다음 순위가 비어 있음 | RANK.EQ의 동점 처리 방식 | 4번, 5번 |
| 부서 안에서의 순위가 필요함 | RANK 계열 함수는 조건을 못 받음 | 6번 |
| #N/A가 나오거나 한 명이 빠진 듯한 순위 | 범위에 없는 값, 텍스트로 된 숫자 | 7번 |
2. RANK.EQ 기본 사용법
RANK.EQ는 숫자 목록 안에서 한 값이 몇 번째로 큰지(또는 작은지)를 돌려줍니다. 구문은 다음과 같습니다.
=RANK.EQ(순위를 구할 값, 전체 범위, [순서])
순서를 생략하거나 0을 넣으면 큰 값이 1등인 내림차순 순위가 나옵니다. 점수 순위라면 D2에 =RANK.EQ(C2,$C$2:$C$7)를 넣고 D7까지 채웁니다. 결과는 김민준 1, 이서연 4, 박지후 1, 최유나 6, 정하준 4, 강수아 3입니다.
여기서 꼭 지켜야 할 점은 두 번째 인수인 전체 범위를 $C$2:$C$7처럼 고정하는 것입니다. 첫 번째 인수(C2)는 행마다 바뀌어야 하므로 그대로 두고, 범위만 F4를 눌러 $를 붙입니다. 상대 참조와 절대 참조의 차이는 엑셀 절대참조/상대참조 완벽 가이드 F4 단축키 활용팁에 정리했습니다.
3. 낮은 값이 1등인 오름차순 순위
기록 시간, 불량 건수, 비용처럼 작을수록 좋은 값은 세 번째 인수에 1(0이 아닌 수)을 넣어 오름차순 순위를 구합니다.
=RANK.EQ(C5,$C$2:$C$7,1) → 1 (최유나 78점)
=RANK.EQ(C7,$C$2:$C$7,1) → 4 (강수아 88점)
=RANK.EQ(C2,$C$2:$C$7,1) → 5 (김민준 92점)
반대로 점수 순위에 실수로 1을 넣으면 최하점이 1등이 됩니다. 순위가 거꾸로 나온다면 세 번째 인수부터 확인하세요. 범위를 미리 정렬해 둘 필요는 없습니다.
4. 동점자 순위: RANK.EQ와 RANK.AVG

Microsoft 문서에 따르면 RANK.EQ는 같은 값에 같은 순위 중 가장 높은 순위를 주고, 동점이 있으면 그다음 순위는 건너뜁니다. 예시에서 92점 두 명이 모두 1위가 되고 2위는 없으며, 88점이 3위가 됩니다. 85점 두 명은 4위, 그다음 78점은 6위입니다.
RANK.AVG는 같은 값에 순위의 평균을 줍니다. 92점 두 명은 1위와 2위의 평균인 1.5, 85점 두 명은 4.5가 됩니다. 통계 처리처럼 동점의 순위 합계를 맞춰야 할 때 씁니다.
| 점수 | RANK.EQ | RANK.AVG | 순번(5번 수식) |
|---|---|---|---|
| 92 (김민준) | 1 | 1.5 | 1 |
| 92 (박지후) | 1 | 1.5 | 2 |
| 88 (강수아) | 3 | 3 | 3 |
| 85 (이서연) | 4 | 4.5 | 4 |
| 85 (정하준) | 4 | 4.5 | 5 |
| 78 (최유나) | 6 | 6 | 6 |
동점이 없는 값(88점, 78점)은 세 방식의 결과가 같습니다. 성적표처럼 "공동 1위"를 그대로 보여 줄 때는 RANK.EQ가 가장 자연스럽습니다.
5. 동점 없이 순번 매기기
경품 추첨 순서나 정렬 기준처럼 동점자에게도 서로 다른 순위를 줘야 할 때는 RANK.EQ에 COUNTIF를 더합니다. 위쪽 행에 같은 점수가 몇 번 나왔는지 세어, 먼저 나온 사람에게 앞 순위를 주는 방식입니다.
=RANK.EQ(C2,$C$2:$C$7)+COUNTIF($C$2:C2,C2)-1
COUNTIF의 범위는 $C$2:C2처럼 시작만 고정하고 끝은 상대 참조로 둡니다. 아래로 채우면 $C$2:C3, $C$2:C4로 범위가 늘어나면서, 92점이 두 번째로 나온 박지후 행에서는 COUNTIF가 2가 되어 1+2-1=2위가 됩니다. 결과는 위 표의 순번 열처럼 1~6이 겹치지 않게 나옵니다. COUNTIF 사용법은 엑셀 COUNTIF 함수 완벽 가이드 조건별 데이터 개수 세기에 정리했습니다.
이 방식은 같은 점수일 때 표에서 위에 있는 사람이 앞 순위를 받습니다. 다른 기준(입사일, 다른 과목 점수 등)으로 동점을 가르려면 그 기준으로 표를 먼저 정렬한 뒤 수식을 채우세요.
6. 부서별(그룹별) 순위 구하기
RANK.EQ에는 조건을 넣을 수 없어서 부서 안에서의 순위는 COUNTIFS로 구합니다. 같은 부서이면서 내 점수보다 높은 사람 수를 센 뒤 1을 더하면 그게 부서 내 순위입니다.
=COUNTIFS($B$2:$B$7,B2,$C$2:$C$7,">"&C2)+1
| 이름 | 부서 | 점수 | 부서 내 순위 |
|---|---|---|---|
| 김민준 | 영업 | 92 | 1 |
| 이서연 | 영업 | 85 | 2 |
| 정하준 | 영업 | 85 | 2 |
| 박지후 | 마케팅 | 92 | 1 |
| 강수아 | 마케팅 | 88 | 2 |
| 최유나 | 마케팅 | 78 | 3 |
동점은 RANK.EQ와 같은 방식(공동 순위, 다음 순위 건너뜀)으로 처리됩니다. 낮은 값이 1등이어야 하면 ">"를 "<"로 바꾸면 됩니다. FILTER와 XMATCH로 그룹별 순위를 구하는 방법은 엑셀 그룹별 순위 찾기 XMATCH, FILTER 함수 활용에서 다뤘습니다.
7. 순위가 이상하게 나올 때
① 아래로 갈수록 순위가 작아짐
=RANK.EQ(C2,C2:C7)처럼 범위를 고정하지 않고 채우면 범위가 한 칸씩 내려갑니다. 7행에서는 =RANK.EQ(C7,C7:C12)가 되어 자기 자신만 비교하므로 강수아가 1위로 나오고, 5행 최유나도 6위가 아닌 3위가 됩니다. 범위를 $C$2:$C$7로 고친 뒤 다시 채우세요.
② 텍스트로 된 숫자가 섞임
Microsoft 문서에 따르면 범위 안의 숫자가 아닌 값은 무시됩니다. 정하준의 85가 텍스트로 저장돼 있으면 순위 계산에서 빠지기 때문에, 최유나의 순위가 6위가 아니라 5위로 나옵니다. 셀 왼쪽 위에 초록색 삼각형이 보이면 텍스트 숫자를 의심하고 숫자로 바꾸세요.
③ #N/A 오류
순위를 구할 값이 범위 안에 없으면 #N/A가 나옵니다. =RANK.EQ(90,$C$2:$C$7)처럼 범위에 없는 90을 직접 넣었거나, 첫 번째 인수가 범위 밖 다른 셀을 가리킬 때 생깁니다. 첫 번째 인수가 같은 행의 범위 안 셀인지 확인하세요.
8. 자주 하는 실수
| 실수 | 결과 | 바로잡기 |
|---|---|---|
| =RANK.EQ(C2,C2:C7)을 그대로 채움 | 아래 행일수록 순위가 작게 나옴 | 범위를 $C$2:$C$7로 고정 |
| 첫 번째 인수까지 $C$2로 고정 | 모든 행이 같은 순위 | 첫 번째 인수는 C2 그대로 |
| 점수 순위에 order 1을 넣음 | 최하점이 1등 | order 생략 또는 0 |
| 순번용 COUNTIF 범위를 $C$2:$C$7로 씀 | 동점자 둘 다 뒤 순위로 밀림 | $C$2:C2처럼 끝은 상대 참조 |
9. 자주 묻는 질문
Q. RANK 함수와 RANK.EQ 함수는 무엇이 다른가요?
결과는 같습니다. RANK는 이전 버전과의 호환성을 위해 남아 있는 함수이고, Microsoft는 RANK.EQ와 RANK.AVG를 쓰도록 안내합니다. 기존 파일의 RANK 수식은 그대로 두어도 되지만, 새로 만드는 수식은 RANK.EQ로 쓰는 편이 좋습니다.
Q. 1등부터 순서대로 이름을 뽑고 싶어요.
5번의 순번 열(H2:H7)을 만든 뒤 INDEX와 MATCH로 순번에 맞는 이름을 찾습니다. =INDEX($A$2:$A$7,MATCH(1,$H$2:$H$7,0))는 김민준, MATCH의 1을 2로 바꾸면 박지후가 나옵니다. RANK.EQ 결과로 찾으면 공동 1위 때문에 2위를 찾지 못하므로 겹치지 않는 순번을 써야 합니다. 점수만 필요하면 =LARGE($C$2:$C$7,3)처럼 LARGE로 세 번째로 큰 값(88)을 바로 구할 수 있습니다.
'엑셀' 카테고리의 다른 글
| 엑셀 셀 병합 문제와 대안 – 정렬 오류·필터 누락·합계 틀림 해결과 선택 영역의 가운데로 (0) | 2026.10.20 |
|---|---|
| 엑셀 천 단위 표시 – 천 원·만 원 단위 서식과 원 붙이기, 합계 차이 해결 (0) | 2026.10.19 |
| 엑셀 백분율 계산 – 비율·증감률 수식과 % 서식 100배·#DIV/0! 해결 (0) | 2026.10.16 |
| 엑셀 #REF! 오류 원인과 해결 – 행·열 삭제·VLOOKUP 열 번호·INDIRECT 원인별 방법 (0) | 2026.10.15 |
| 엑셀 #SPILL! 오류 해결 – 분산 범위 막힘·병합 셀·표 안 수식 원인별 방법 (0) | 2026.10.14 |