2023. 5. 8. 22:43ㆍ프로그래밍/EXCEL
안녕하세요? 분석하는 디제이입니다.
엑셀에서 아래 표와 같이 10점, 20점, 30점, 40점, 50점, 50점, 50점인 점수가 있을 때,
RANK함수로 순위를 매기면 왼쪽 아래와 같이 순위 중복이 발생하는데요.
오늘은 엑셀에서 순위를 구할 때, 오른쪽 아래처럼 중복 없이 순위를 구하는 방법에 대해 알아보려고 합니다.
그럼 알아볼까요??
결론만 알려드리면, RANK함수와 COUNTIF 혹은 COUNTIFS함수를 사용해서 아래표의 1번, 2번, 3번, 4번 순서에 따라
계산할 계획입니다.
요렇게 말이죠.
위에서 COUNTIF함수를 사용했지만, COUNTIFS함수를 사용해도 됩니다. 둘은 동일한 기능을 하는 함수니까요.
1. RANK함수로 순위 매기기
1번은 먼저 RANK함수로 주어진 값들의 순위를 매기는 겁니다.
여기서는 글을 읽으시는 분들 모두 RANK함수를 사용할 수 있다고 생각하고 설명은 생략하겠습니다.
2. COUNTIF, COUNTIFS함수로 중복 숫자 세기
2번은 COUNTIF, COUNTIFS함수로 중복되는 숫자 중, 먼저 나온 숫자부터 차례로 1,2,3, ... 번호를 매기는 겁니다.
아래 표처럼요.
그러기 위해서는 COUNTIF함수를 사용해서 범위를 지정할 때, 첫 값을 고정시키고 한 칸 내려올 때마다 범위가 늘어나도록 지정해주어야합니다. (COUNTIFS함수를 사용하셔도 무방합니다.)
아래에서 셀을 하나씩 내려갈 때마다 범위가 늘어가는 것처럼요.
첫 값을 고정시키기 위해서 범위의 첫 값에 F4를 눌러 절대참조를 사용하거나 F4를 두 번 눌러 행만 고정시키는 혼합참조를 사용해주면 되겠습니다. 위의 예시에서 저는 D4에 절대참조를 사용해서 $D$4로 해주었습니다.
이렇게 설정하면 COUNTIF함수의 결과가 중복 값이 없으면 1로, 중복 값이 있으면 차례로 1,2,3,... 값이 매겨집니다.
3. 1,2에서 구한 값 더하기
3번은 그냥 1번에서 RANK함수로 구한 순위와 2번에서 COUNTIF함수로 구한 중복 숫자들에 대한 값을 그냥 더해주는 과정입니다.
4. 3번에서 구한 값에 -1해주기.
4번은 3번에서 구한 값에 1을 빼주는 과정입니다.
2번에서 중복값이 없어도 1이라는 숫자를 부여했고, 이를 RANK순위에 더해주었기 때문에 다시 빼주는 과정 필요합니다.
이렇게 1,2,3,4번을 차례로 수행하면, 우리가 구하고자 했던 중복 없는 순위를 구할 수 있게 됩니다.
이상으로 엑셀에서 중복 없이 순위를 구하는 방법에 대해 알아보았습니다.
혹시 이해 안되시는 부분이 있거나 궁금한 내용이 있으면 댓글로 문의주시면 답변해드리겠습니다.
그럼 다음에 또 좋은 글로 찾아뵙겠습니다.
감사합니다.
'프로그래밍 > EXCEL' 카테고리의 다른 글
엑셀에서 문자 공백, 띄어쓰기 없애기 in excel (0) | 2024.11.16 |
---|---|
엑셀 피벗테이블 '데이터 원본 참조가 잘못되었습니다.' 오류 (1) | 2024.09.26 |
MEDIANIF 함수 (0) | 2021.10.13 |
INDEX(MATCH())함수 (0) | 2021.10.09 |
MATCH 함수 (0) | 2021.08.19 |