엑셀에서 데이터를 순위별로 정리해야 할 때 RANK 함수만큼 유용한 도구는 없습니다. 이 함수를 사용하면 특정 숫자가 전체 목록에서 몇 번째 순위에 해당하는지 쉽게 파악할 수 있습니다. 이번 글에서는 엑셀 RANK 함수의 기본 사용법부터 응용 방법까지 상세하게 알아보겠습니다.
엑셀 RANK 함수란?
엑셀 RANK 함수는 지정한 셀의 값이 포함된 범위 내에서 몇 번째 순위인지를 반환하는 함수입니다. 예를 들어, 시험 점수 목록에서 특정 학생의 점수가 몇 등인지 알고 싶을 때 이 함수를 사용하면 편리합니다. RANK 함수는 크게 두 가지 인수를 받습니다. 첫 번째 인수는 순위를 매길 숫자이고, 두 번째 인수는 숫자가 포함된 셀 범위입니다. 선택적으로 세 번째 인수를 사용하여 순위를 내림차순(0 또는 생략) 또는 오름차순(1)으로 지정할 수 있습니다.
RANK 함수의 기본 사용법
RANK 함수의 기본 구문은 =RANK(number, ref, [order]) 입니다. 여기서 number는 순위를 매기고자 하는 숫자 또는 해당 숫자가 있는 셀을 의미합니다. ref는 순위를 매길 숫자들의 전체 범위입니다. 이 범위는 절대 참조($)를 사용하여 고정하는 것이 일반적입니다. order는 순위를 결정하는 방식입니다. 0 또는 생략 시에는 값이 클수록 높은 순위(내림차순)로 간주하며, 1을 입력하면 값이 작을수록 높은 순위(오름차순)로 간주합니다.
예를 들어, A1부터 A10까지의 점수가 있고 B1 셀에 A1 셀의 점수에 대한 순위를 매기고 싶다면 =RANK(A1, $A$1:$A$10, 0) 와 같이 입력할 수 있습니다. 여기서 $A$1:$A$10은 점수 범위를 절대 참조로 지정하여 B1 셀의 수식을 아래로 복사해도 범위가 변하지 않도록 한 것입니다.
내림차순과 오름차순 순위 매기기
일반적으로 시험 점수나 판매 실적 등 높은 숫자가 더 좋은 순위를 의미하는 경우에는 내림차순(order=0 또는 생략)을 사용합니다. 예를 들어, A1 셀에 90점, A2 셀에 85점, A3 셀에 90점이 있다면 =RANK(A1, $A$1:$A$3, 0)은 1을 반환하고, =RANK(A2, $A$1:$A$3, 0)은 3을 반환합니다. A1과 A3의 점수가 같으므로 두 셀은 같은 순위를 가지며, A2는 그 다음 순위가 됩니다. 만약 A1과 A3에 대해 같은 순위(1)를 부여하고 싶다면 RANK.EQ 함수를 사용해야 합니다.
반면, 등산 코스의 난이도나 작업 소요 시간 등 낮은 숫자가 더 좋은 순위를 의미하는 경우에는 오름차순(order=1)을 사용합니다. 예를 들어, A1 셀에 3시간, A2 셀에 2시간, A3 셀에 4시간이 걸렸다면 =RANK(A1, $A$1:$A$3, 1)은 2를 반환합니다. 즉, 3시간은 2시간(1위) 다음으로 두 번째로 짧은 시간이라는 의미입니다.
RANK.EQ와 RANK.AVG 함수
엑셀 2010 버전부터는 RANK 함수와 유사한 기능을 하는 RANK.EQ 함수와 RANK.AVG 함수가 추가되었습니다. RANK.EQ 함수는 RANK 함수와 동일하게 작동하지만, 동일한 순위를 가진 값들에 대해 동일한 순위를 부여합니다. 예를 들어, 위에서 본 90점 두 개는 RANK.EQ 함수를 사용하면 모두 1위로 표시됩니다. RANK.AVG 함수는 동일한 순위를 가진 값들에 대해 평균 순위를 부여합니다. 예를 들어, 90점 두 개가 있다면 두 값 모두 1.5위로 표시됩니다. 따라서 동일한 값이 있을 때 어떻게 순위를 처리할지에 따라 RANK.EQ 또는 RANK.AVG 함수를 선택하여 사용하는 것이 좋습니다.
RANK 함수 활용 팁
RANK 함수를 사용할 때 주의할 점은 ref 범위에 순위를 매길 숫자 외에 다른 데이터가 포함되지 않도록 해야 한다는 것입니다. 만약 텍스트 데이터가 포함되어 있다면 해당 셀은 무시되지만, 의도치 않은 결과가 나올 수 있습니다. 또한, ref 범위를 절대 참조로 지정하는 것을 잊지 마세요. 그렇지 않으면 수식을 복사할 때 범위가 변경되어 정확한 순위를 얻을 수 없습니다. 엑셀 RANK 함수를 익혀두면 데이터 분석 및 보고서 작성 시 매우 유용하게 활용할 수 있습니다.