티스토리 뷰

지난 게시물에서는 엑셀 통계함수 MEDIAN 함수, LARGE 함수, SMALL 함수를 살펴보았습니다.
이번 게시물에서는 엑셀 통계 함수 RANK 함수를 배워보려고 합니다. 순위를 구하는 함수이지요.

살펴볼까요.

* 엑셀 RANK 함수

기능: 인수로 지정한 수치로 범위에서 순위를 구함.

용법: =RANK(수치, 범위, [순위 구하는 법])
- 수치는 셀 참조 혹은 수치를 직접 입력할 수 있습니다. 둘 모두 범위내의 수치여야 합니다. 그렇지 않은 경우 #N/A 에러를 유발합니다.
- 범위는 수치를 비교하여 순위를 구하는 범위입니다.
- 순위 구하는 법은 내림 차순의 순위를 구할 때는 0, 오름 차순으로 순위를 구할 때는 1을 입력합니다. 생략시는 기본값인 0으로 계산합니다.


용례1: =RANK(A4, A1:A10, 0)
용례1의 결과: A4 셀의 값을 범위 A1:A10 에서 순위를 구합니다. 0 이 순위구하는법 인수로 사용되었기에 내림 차순으로 순위를 구합니다. 큰 값부터 1 순위로 메기는 것입니다.


용례2: =RANK(A4, A1:A10)
용례2의 결과: 용례1의 결과와 동일합니다. 순위구하는법이 생략되어 있지만 생략시 기본값이 0이라 용례1과 동일한 결과를 얻습니다.


용례3: =RANK(10, B3:B9, 1)
용례3의 결과: 10의 수치를 B3에서 B9 의 범위에서 오름 차순으로 순위를 구합니다. 작은값이 1순위가 되는 것이지요. 이때 10은 반드시 B3:B9 범위에 있어야 합니다. 그렇지 않으면 #N/A 에러를 유발합니다. #N/A 에러는 찾고자하는 값을 그자리에서 찾을수 없을 때 발생하는 오류메시지 입니다.


기출 예제1: 이전의 게시물의 엑셀 RANK 함수 부분을 참조하세요.


기출 예제2: 1학년 신체검사표에서 키[C3:C11]에 대한 순위와 좌석기준표[B14:D15]를 이용하여 배정자리[D3:D11]를 구하시오. ( 컴활 2급 2004년 1회 B형 )

- 키 순위는 키가 작은 사람이 1위
- HLOOKUP 과 RANK 함수 사용.
- 키 순위가 1~3이면 가열, 4~6이면 나열, 7~9이면 다열로 계산.

[그림1] 엑셀 RANK 함수 컴활 기출 문제[그림1] 엑셀 RANK 함수 컴활 기출 문제


기출 풀이2: D3 셀에 셀 포인터를 놓고 다음의 수식을 입력합니다.

=HLOOKUP( RANK( C3, $C$3:$C$11, 1 ), $B$14:$D$15, 2 )

수식 입력후 D11 셀까지 수식 복사합니다.


수식을 풀어보면 문제의 요구를 만족하기 위해 두 함수를 사용하였습니다. 엑셀 RANK 함수는 키를 오름 차순 정렬하는데 사용되었습니다.

먼저 C3 셀의 키를 나머지 사람의 키들[C3:C11] 과 비교하여 순위를 구합니다. 문제에서 작은 사람을 1위로 메기라 하였기에 순위구하는법 인수를 1로하여 오름 차순으로 순위를 구하였습니다.

이때 주의하셔야 할 것은 다른 사람의 키, 곧 범위영역을 절대 참조 하는 것입니다. 이는 여러 사람의 배정 자리를 구하고 있고 D3의 수식이 나머지 배정 자리 셀에 수식 복사 되기에 이때 범위가 움직이지 않도록 고정하는 역할을 합니다. 이를 잊으시고 엑셀 RANK 함수를 힘들어 하시는 분들이 많습니다. 기억하세요.

이렇게 구하여진 순위로 아래의 좌석기준표의 첫 행에서 수평(열 방향)으로 찾아 그에 해당하는 배정 자리를 셀에 반환합니다. 이때 중요한 것은 키 순위가 오름 차순 정렬되어 있고 순위는 1~7 까지 나올 수 있다는 것입니다. 하여 찾는 방법 인수를 비워 두어 유사값을 찾도록 하는 것입니다. 만일 순위가 3 위라면 좌석기준표에서 값을 찾고 일치하는 값이 없기에 3보다 작은 가장 큰 값을 일치하는 값으로 정합니다. 1이 되지요. 하여 가열을 얻습니다.


@ 이상이 순위를 구하는 엑셀 함수 RANK 함수입니다. 이 함수에서 주의하셔야 할 것은 범위를 절대참조 할 때가 있다는 것입니다. 위의 기출2와 같이 다른 셀로 순위를 구한 셀의수식을 복사하는 경우가 그러하겠습니다. 또 힘들어 하시는 것이 순위를 부여하는방법 인수를 헷갈려 하십니다.
0 을 주시거나 비워두게 되면 내림 차순입니다. 큰값이 1위가 되는 것이지요. 우리가 흔히 1위라 생각하면 많은 점수를 얻은 사람을 생각하지요. 이것이 기본값이고 기본값은 생략가능합니다. 작은수를 1순위로 메기라는 말이있다면 1 을 옵션값으로 설정하는 것이지요.


* 컴활2급과 컴활3급 함수목록 ver 0.2


댓글