우선순위 부여하여 동점자 석차 구하기

이전의 글에서 sumproduct함수를 설명하면서 동점자가 나왔을 때 추가의 기준을 적용하여 순위를 결정하는 방법 을 설명한 적이 있습니다. (예를 들어, 총점이 같을 경우 국어 점수가 높은 학생이 순위를 높게 하는 경우) rank함수를 써서 순위를 구하고, 동점자의 경우 자신보다 총점이 같으면서 국어점수가 높은 학생의 수를 구해서 순위에다 더해주는 방법이었습니다. 참고: http://garyjonesgogo.blogspot.kr/2015/11/11-12-sumproduct.html 그 글에서, 하나의 기준이 아니라, 제2,제3,제4의 기준을 주려면 어떻게 해야하나 는 문제에 대해서는 답을 내놓지 못했습니다.(예를 들어, 총점이 같을 경우, 국어점수를 우선으로, 국어점수도 같으면 영어점수, 영어점수도 같으면 수학점수….) 물론 rank와 sumproduct를 더하는 위의 방법을 쓸 수도 있습니다. 하지만 우선순위가 많아질수록 수식이 기하급수적으로 늘어납니다. 위의 그림에서처럼, 국어/영어/수학의 순서로 우선순위를 부여하면 수식이 저렇게 길어지게 됩니다. 더 좋은 방법을 발견할 수 없어 포기하고 있었는데, 지식인에 검색을 해보니 비슷한 고민을 하고 있는 사람의 질문에 답이 달려있었습니다. 참고: http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=102020101&docId=72155130&qb=7JeR7IWAIOuPmeygkOyekA==&enc=utf8§ion=kin&rank=49&search_sort=0&spq=0 지식인 답변을 참고하여 수식을 만들어 보았습니다. 이것도 짧은 수식은 아닙니다만, 가중치를 부여하는 기준이 아무리 많아져도 수식의 길이가 더이상 길어지지 않는다 는 장점이 있습니다. 가중값을 구하는 열만 하나 만들면 되는 겁니다. 수식의 기본적인 틀은, 총점이 같은 인원수가 1이면 보통의 RANK함수를 사용...