안녕하세요 이번엔 RANK함수에 대해 공부해 보려고 합니다.
우선 RANK함수는 특정 범위안에서 특정 셀의 등수를 반환하게 됩니다.
실무에선 순위를 나타내야할 경우가 많기에 자주 사용디는 함수중 하나입니다.
RANK함수는 크게 3가지로 Rank, RankEQ, RankAVG로 나눠지게 됩니다.
이렇게 나눠지는 이유는 중복되는 등수때문이며, 함수가 중복된 등수를 처리하는 방식에 따라서 나눠지게 됩니다.
rank와 rankEQ함수의 중복함수처리 방법은 동일합니다. 두함수는 중복을 같은 등수로 처리, 그중 높은 등수로 처리
rank.AVG는 겹치는 등수의 평균으로 처리하게 됩니다.
사용법은 3가지 모두 동일합니다.
=RANK(number, ref, [order]) 이렇게 사용하고
Numver : ref에 포함되어 있는 특정 셀(숫자)
ref : number의 등수를 계산할 범위
order : 0 = 내림차순, 1 = 오름차순
이렇게 나타낼 수 있습니다. 참고로 성적이 높을사람이 1등이니 내림차순이고 이는 0을 의미합니다.
하지만 데이터가 별로 없으면 중복자가 있어도 별 문제가 없지만 문제는 데이터가 커졌을 때 입니다.
우선 매치함수를 통해 알 수 있지 않냐는 의문이 생길 수 있습니다.
이런식으로 동점자에겐 에러가 발생하게 됩니다.
그래서 countif 함수를 활용하여 동점자에게 같은 등수를 매기지 않고 서로 다른 등수를 매기는 방식을 사용하려 합니다.
먼저 논리는 이렇습니다. 동점자중 뒷사람에게 +1을 하여 4등을 만들자 입니다.
우선 어떻게 +1을 하게 만드는 방법에 대해 설명드리려고 합니다.
카운트이프를 통해 일정범위안에서 중복되는 것의 갯수를 구한후 -1을 하는 것입니다.
이런식으로 B,C의 점수가 28로 동점이니 중복은 2입니다. 거기에 -1을 하면 1이 남게 됩니다.
다른 것들은 중복이 없으니 1개가 나오게 되고 -1을 하면 0이 나오기에 결국엔 0을 더하는 꼴이 됩니다.
이를 응용하면 깔끔하게 나오게 됩니다.
또 매치함수를 이용하여 등수의 이름과 총점을 나타낼 수 있습니다.
우선 1등을 매치함수를 활용하여 찾습니다.
그다음 오프셋을 활용하여 이름과 총점을 찾는 것입니다.
이렇게 활용 할 수 있게 되었습니다.
오늘은 이것으로 복습을 마치겠습니다.