728x90

데이터의 양이 많고 적은지를 사용해야 합니다.
순위를 알면 이 값들이 얼마나 크고 작은지 짐작할 수있습니다.
RANK 함수를 통해서 순위를 어떻게 뽑고 또 중복된 순위를 처리하는 방법을 알아 보겠습니다.
 

 
 

1. RANK 함수 사용하기

 
목록에서 순위를 뽑아주는 함수로 RANK, RANK.EQ, RANK.AVG 3개의 함수로 구성되어있습니다.
RANK는 RANK.EQ와 같은 함수입니다.
각각 크게 사용법이 다르지 않기 때문에 한번에 알아보겠습니다.
 
RANK.EQ(number,ref,[order]) : 주어진 리스트에서 순위를 구합니다. RANK와 같은 함수입니다.
 

  • number : 순위를 구하려는 수입니다.
  • ref : 순위를 확인하려는 리스트입니다. 숫자 목록의 배열 또는 참조입니다. 숫자 이외의 값은 무시됩니다.
  • order : 오름차순으로 순위를 볼지 내림차수로 볼지 결정합니다. 0 - 내림차수, 1 - 오름차수
  • 이 함수는 동일한 숫자가 있을때는 모두 같은 순위를 정수로 반환합니다.

 
RANK.AVG(number,ref,[order]) : 주어진 리스트에서 순위를 구합니다. 
 

  • number : 순위를 구하려는 수입니다.
  • ref : 순위를 확인하려는 리스트입니다. 숫자 목록의 배열 또는 참조입니다. 숫자 이외의 값은 무시됩니다.
  • order : 오름차순으로 순위를 볼지 내림차수로 볼지 결정합니다. 0 - 내림차수, 1 - 오름차수
  • 이 함수는 동일한 숫자가 있을때는 순위의 평균을 반환하여 소수점이 될 수 있습니다.

 
RANK.EQ와 RANK.AVE는 기본적으로 같은 기능과 용법을 가지고 있습니다.
차이는 리스트에서 동일한 중복된 숫자를 처리하는 방법인데요.
EQ는 모두 같은 자연수가 반환되니 이해하기 쉽습니다.
AVG는 바로 등수의 평균을 반영합니다. 2개 있을때는 ().5가 됩니다.
두 함수는 숫자가 같으면 등수가 모두 같다는 점은 동일합니다.

같은 수 일 때는 반환하는 방식이 다릅니다.

 

320x100

 
 

2. 중복된 순위를 없애는 방법

 
순위를 겹치지 않게 만들고 싶습니다. 문제가 되는 경우가 있습니다.
이럴때는 엑셀에서는 딱히 깔끔한 방법이 없습니다.
COUNTIF 함수를 사용해야 하고 조금 복잡하게 사용해야 하는데 방법을 소개하겠습니다.
(COUNTIF를 소개하는 링크)
 
=COUNTIF($C$7:C17,C17) - 범위에 앞쪽에는 절대참조 뒤에는 상대참조를 한 후에 아래로 채웁니다.
그럼 "리스트에서 선택할 셀 위에서 같은 값을 샘" 함수가 되게 됩니다.
즉, 처음 만나는 값은 무조건 1이고 똑같은 값을 다시만나면 2, 3 순으로 늘어나게 됩니다.
 

 
이걸 이용하면 순위를 고유함수로 사용할 수 있습니다.
RANK의 결과에 이 COUNTIF의 값을 더하고 1을 빼면 됩니다.(countif는 최소가 1임으로)
이런 방식을 사용하면 중복되는 등수가 없어 집니다.
 

 
두 함수를 나누지 않고, 한칸에 모두 사용할 수도 있습니다.
이런 함수는 상당히 길어지지만 나누어 생각하면 이해할 수 있습니다.
=RANK.EQ(C17,$C$7:$C$23) + COUNTIF($C$7:C17,C17) -1
중복까지 제어하면 랭크함수의 마스터가 됩니다. 연습해 봅시다.
 
 
 

반응형

+ Recent posts