[Excel] 순위 확인 및 공동 순위 찾아내기
엑셀로 공동 순위를 찾아내는 방법을 설명드리려고 합니다. 말씀드리면 이 방법은 많은 데이터에 사용해 보거나, 심심할 때 해보는 방법일 뿐이지, 수작업으로 하는 것이 훨씬 빠를 경우가 있습니다. 수작업이 빠르시면 수작업으로 하시는 것을 추천드립니다.
공동 순위를 찾아내는 방법입니다.
예를 들어 위와 같은 데이터가 있을 경우 1등부터 순위를 나열하고 공동 순위로는 누가누가 있는지 알고 싶을 것입니다. 그럼 가장 먼저 순위를 매겨 보도록 하겠습니다.
1. 순위 매기기
RANK라는 함수를 사용하면 순위를 매길 수 있습니다. RANK(값, 범위) 이런 식으로 작성하면 선택한 값이 범위 중에 몇 번째 인지 알 수 있습니다.
이렇게 하면 각 ID마다의 순위를 알 수 있습니다. 순위를 오름차순으로 정렬하게 되면 편하게 볼 수 있을 것입니다. 데이터가 적으면 아래와 같이 보면 더 편하게 정리가 가능합니다.
하지만 데이터가 많거나 하나의 표로 정리하고 싶은 충동이 들 수도 있습니다. 그러기 위해 표로 정리해 보도록 하겠습니다.
2. 표로 정리하기
표로 정리하기 위하여 순위 중에서 원하는 순위만 골라내 보도록 하겠습니다. IF 함수를 이용하여 원하는 순위만 남기고 그 순위가 해당하는 행의 값이 남도록 하겠습니다.
IF($C$3:$C$16=$E4,ROW($C$3:$C$16),"")
이 함수를 이용하니 원하는 순위의 행의 값이 남게 되고, INDEX 함수를 사용하면 각 순위에 해당하는 ID가 불러와지게 됩니다. 하지만 공동 순위가 문제가 됩니다. 공동 순위에 해당하는 ID가 전부 불러오는데 문제가 생기게 됩니다. 이를 해결하기 위해 SMALL 함수를 이용하여 표에 나타날 수 있도록 하겠습니다.
SMALL(IF($C$3:$C$16=$E4,ROW($C$3:$C$16),""),COLUMN()-5)
위의 함수를 이용하니 표에 원하는 셀 (F열)에 IF 함수로 원하는 순위만 남은 값 중에 가장 위에 값 (첫 번째 순서)을 불러올 수 있게 됐습니다. 그리고 G열에는 원하는 순위 중 2번째 순서로 나온 값을 불러올 수 있게 됐습니다. 이제 여기에 INDEX 함수를 붙여서 표를 드래그해보도록 하겠습니다.
IFERROR(INDEX($A$3:$A$16,SMALL(IF($C$3:$C$16=$E4,ROW($C$3:$C$16),""),COLUMN()-5)-2),"-")
위의 그림과 같이 표에 정리가 되게 됩니다. 각 순위에 해당하는 ID가 불러와지고, 공동 순위의 경우 열 순서대로 나오게 됩니다. 공동 순위가 많아질수록 표가 가로로 길어질 것입니다.
위의 예시는 간단히 보여드리려고 데이터를 적게 하였지만, 데이터가 많아지게 되면 유용하게 쓰일 수 있을 것 같습니다. 아니면 심심하신 분들도 한번 해보시길 추천드립니다. 엑셀 공부하는 셈 치고 하는 것도 재미있습니다.
*참고: 위의 함수는 표 안의 'F4'의 기준으로 작성된 것입니다.
'일상 이것저것 > 엑셀' 카테고리의 다른 글
[엑셀] 회비정리 파일 (0) | 2023.07.19 |
---|---|
[Excel] D-day를 구해보자!! (0) | 2021.04.13 |
[엑셀] 두그룹 리스트 합치기 (공통항목 제외하기) (0) | 2020.08.07 |
[Excel] 그룹별 평균, 표준편차, 최대값, 최소값 한번에 구하기 (0) | 2020.07.09 |
[엑셀] 겹치지 않게 난수 생성하기 (0) | 2020.07.05 |