강좌 및 설정/엑셀 ITQ 출제 함수

엑셀 함수 RANK, RANK.EQ, RANK.AVG

웹 개발자의 비상 2024. 7. 19. 09:05

이번 강좌는 순위 관련 함수들에 대해 알아보겠습니다. 

결론적으로 ITQ 시험과 관련해서 말씀드리자면 RANK와 RANK.AVG는 나오지 않을 것으로 생각됩니다. 

 

일단 RANK 함수는 코로나 전까지는 꾸준히 출제되었던 것으로 알고 있습니다. 그 이후부터는 RANK.EQ가 출제되고 있는 것 같고요. 두 함수는 동일한 인수를 갖고 있으며 동일한 결과를 반환합니다. 동일한 함수로 봐도 무방하다는 얘기입니다.

 

모든 프로그램이 그렇겠지만 오랜기간 사용하다 보면 사용자들은 기능상 새로운 요구가 생기가 됩니다. 그럼 프로그램 개발자들은 그걸 반영하여 새로운 버전을 내놓죠. 엑셀도 마찬가지입니다. 해가 지날 때마다 오류를 수정하고 새 기능을 추가하여 새 버전을 내놓고 있습니다. 그러다 보니 자연스럽게 잘 쓰지 않거나 문제가 되는 기능들은 퇴화하여 사라지기도 합니다. 바로 RANK와 RANK.EQ가 그런 사이입니다.

 

RANK.EQ 함수는 엑셀 2010버전 부터 추가되었다고 합니다. 그전에는 동일한 결과를 얻기 위해서 RANK함수를 써야 했습니다. 이미 시간이 꽤 지났음에도 ITQ 시험에서 계속적으로 RANK 함수가 시험에 나왔던 이유는 아마도 사용자들의 적응 기간을 위해서이지 않을까 생각합니다. RANK를 사용하는 사람들이 RANK.EQ에 익숙해지길 기다렸던 것이겠죠. 그리고 벌써 10년 이상 지났네요. 어느 정도 사용자들이 익숙해지고 사용량이 많아졌을 것이라 판단했을 것이고, 이제는 엑셀 자체에서 RANK를 쓰지 말고 RANK.EQ 사용하라는 경고가 나오니 RANK.EQ로 시험이 출제하고 있는 것 같습니다.

 

그럼 세 함수의 차이점을 알아보겠습니다. 

함수명 부터 보자면, 모두 RANK를 가지고 있습니다. 순위를 의미하겠죠.

다른 점은 EQ와 AVG가 되겠습니다. 여기서 EQ는 EQUAL를, AVG는 AVERAGE를 의미합니다.

그럼 순위를 매기는데 동일하게 또는 평균으로 하겠다는 것이 됩니다.

 

그럼 뭘 동일하게? 뭘 평균으로?

 

 

결국 동일하게 할게 무엇인지, 평균으로 할게 무엇인지만 알면 모든 함수 정의가 끝나겠습니다. 

여기서 이 무엇이 바로 "동일 값"입니다. 나열된 값들 중에는 동일한 값이 있을 수 있으며 그 경우에는 동일한 순위를 매길 것인지 아니면 순위를 평균으로 매길 것인지의 차이가 되겠습니다.

 

 

 

반응형

 

 

 

RANK

수 목록 내에서 수의 크기 순위흘 반환
RANK(number,ref,[order])
  • number - ref에서 순위를 구하려는 수
  • ref - 숫자 목록(범위). 숫자 이외의 값은 무시
  • [order] - 내림차순, 오름차순 정렬 방법, 0이거나 생략시 내림차순

RANK.EQ

수 목록 내에서 수의 크기 순위흘 반환. 동일 순위가 있으면 상위 순위 반환
RANK.EQ(number,ref,[order])
  • number - ref에서 순위를 구하려는 수
  • ref - 숫자 목록의 배열 또는 참조(범위). 숫자 이외의 값은 무시
  • [order] - 내림차순, 오름차순 정렬 방법, 0이거나 생략시 내림차순

RANK.AVG

수 목록 내에서 수의 크기 순위흘 반환. 동일 순위가 있으면 평균 순위 반환
RANK.AVG(number,ref,[order])
  • number - ref에서 순위를 구하려는 수
  • ref - 숫자 목록의 배열 또는 참조(범위). 숫자 이외의 값은 무시
  • [order] - 내림차순, 오름차순 정렬 방법, 0이거나 생략시 내림차순

 

 

함수 정의는 위와 같습니다. 모두 순위를 구한다는 점과 모두 동일한 인수를 갖는다는 점 그리고 함수의 역할만이 다르다는 것만 기억하시면 되겠습니다.

 

 

RANK

 

  1. E5셀을 클릭하여 선택
  2. 수식입력줄 =RANK( 작성 => =RANK(
  3. 수의 목록(범위)에서 찾을 값 number(D5) 참조 => =RANK(D5
  4. 콤마 입력 후 수의 목록(범위) ref(D5:D14) 선택 후 F4키를 눌러 절대참조 => =RANK(D5,$D$5:$D$14
  5. 콤마 입력 후 정렬방법 [order](0) 선택후 엔터 => =RANK(D5,$D$5:$D$14,0)
  6. 작성된 E5셀로 E14셀까지 자동 채우기

 

결과가 완성됩니다. 총인원은 10명이니 순위는 10위까지 있는 것이고요. 현재 100점이 2명 있으니 1위가 2명 그리고 2위는 없고 바로 3위로 넘어갑니다. 동일하게 80점이 3명이니 6위는 3명이 됩니다.

 

 

 

이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

 

 

 

 

위 그림은 이해를 위해 RANK 함수로 진행했습니다.

하지만 RANK는 엑셀에서 사용하지 말고 RANK.EQ를 사용하라고 했으니 함수명만 RANK.EQ로 바꾸면 됩니다. 그 외에는 완전히 동일합니다. 따로 하지는 않겠습니다.

 

그럼 RANK.EQ와 RANK.AVG 차이를 보겠습니다.

RANKEQ, RANK.AVG

 

RANK.EQ의 경우 현재 1위와 2위가 동일 점수입니다. 이 경우 동일 순위로 1이 반환됩니다.

마찬가지로 6위, 7위, 8위가 동일 점수이기 때문에, 모두 동일 순위로 6이 반환됩니다.

반면 RANK.AVG의 경우 1위와 2위가 동일 점수로 이므로 1과 2의 평균인 1.5위가 반환됩니다.

같은 이유로 6,7,8위가 동일 점수이므로 6,7,8의 평균인 7이 반환되는 것이죠

 

자 그런데 한국의 정서상 RANK.AVG를 쓰는 일이 있을까요? 저는 한 번도 본 적이 없는 것 같습니다. 위 같은 경우 "6위는 어디 갔어?"라고 생각하는 사람이 분명 있을 수 있으며 "1.5위는 뭐야?"라고 생각할 테니까요.

 

 

엑셀 RANK.xlsx
0.01MB

 

 

 

728x90