본문 바로가기
Excel/엑셀 함수

엑셀] RANK함수로 순위 구하고, 그룹별 순위 구하기

by excelnote2 2016. 10. 12.


RANK함수는 엑셀2007부터 RANK.EQ함수로 바뀌었다. 

(엑셀2007 이하 버전에서 정상적으로 작동하기 위해서는 RANK함수를 사용해야 한다는 뜻)


RANK.EQ함수를 이용해서 등수를 구해보자. 


RANK.EQ함수의 사용법은 아래처럼 간단하다.


=RANK.EQ(순위를 구하려는 값, 범위, [정렬방법])


첫번째 인수로 순위를 구하려는 값

두번째 인수로 순위를 구하려는 범위를 지정하면 된다. 

(세번째 인수를 사용하지 않거나 0을 사용하면 기본값인 내림차순으로, 1을 사용하면 오름차순으로 순위를 계산한다. 즉. 세번째 인수로 1을 사용하면 성적이 제일 낮은 사람이 1로 계산된다)


아래 그림에서 다음 수식을 입력하였다. 

=RANK.EQ(D2,$D$2:$D$14)



위 그림에서 볼 수 있듯, 동점자가 있을 때 모두 같은 등수로 처리하고 동점자수만큼 건너뛰고 다음 순위를 처리한다. 


RANK함수 중에서 RANK.AVG함수는 동점자가 있을 때 동점자 순위의 구간 평균값을 나타낸다.  

(2등이 2명이라면 2등과 3등의 평균인 2.5로 표시되고

4등이 3명이라면 4,5,6 등의 평균인 5로 표시된다)



< 가점을 부여해서 동점자를 처리하는 방법 >

 - [Excel/엑셀 함수] - 엑셀] 등수(순위) 구할 때 동점자 처리





이제 각 부서별로 몇 등을 했는지 확인해보자. 

전체 등수와 함께 계열별, 팀별(반별) 등수(순위)를 구하기 위해서는 배열수식을 이용하거나 Sumproduct함수를 이용한다. 


=SUMPRODUCT(($A$2:$A$14=A2)*($D$2:$D$14>D2))+1

이 수식은 부서명이 같은 경우와 성적이 자신보다 큰 경우를 AND조건으로 구하고 거기에 1을 더하는 수식이다. 

(1등인 경우 자신보다 성적이 큰 숫자가 없기 때문에 0이 나오기 때문이다)


배열수식으로 구하는 방법은 sum함수와 sumproduct함수가 비슷하기 때문에 수식도 비슷하다. 

=SUM(($A$2:$A$14=A2)*($D$2:$D$14>D2))+1




댓글