엑셀 CHOOSE 함수로 복잡한 IF 중첩을 간단하게 성적표 예제

엑셀(Excel) CHOOSE 함수는 리스트 형태로 정해놓은 값에서 위치(인덱스)로 값을 취득할 수 있는 함수입니다.

=CHOOSE(위치, 값1, 값2, 값3 …)

 

첫 번째 인수인 위치는 1~254까지 지정할 수 있습니다.

두 번째 인수부터는 값을 설정합니다.

값 1 부터 위치(인덱스)가 자동으로 설정되며 1부터 시작합니다.

값도 254개 설정할 수 있습니다. 

 

CHOOSE 사용예제

 

예제 사용 수식

=CHOOSE(B2, “참 잘했어요”, “잘했어요”, “좋아요”, “노력하세요”, “실망이에요”)

 

CHOOSE에 설정한 값들은 고정으로 위치가 정해져 있습니다.

참 잘했어요 – 1

잘했어요 – 2

좋아요 – 3

노력하세요 – 4

실망이에요 – 5

 

B열에 입력한 값들은 CHOOSE에 지정해놓은 값들의 위치에 해당되는 문자들을 출력하게 됩니다.

 

성적표 예제

엑셀 연습을 위해 처음에 많이 하는 것이 성적표 만들기입니다.

대부분 IF 문을 사용하여 성적표를 만듭니다.

물로 IF 문을 사용해도 전혀 문제도 없고 보기에도 편합니다.

하지만 CHOOSE를 사용해서도 IF 문과 똑같은 성적표를 만들 수 있습니다.

먼저 IF로 만든 수식을 보겠습니다.

=IF(B3>=90 , “A” , IF(B3>=80 , “B” , IF(B3>=70 , “C” , IF(B3>=60 , “D” , “F”))))

 

IF안에서 거짓을 경우에 다시 IF 조건을 사용하여 성적을 내도록 하고 있습니다.

이번에는 CHOOSE를 사용해보겠습니다.

=CHOOSE( SUM( INT(B3 >= {90,80,70,60,0} ) ), “F” , “D” , “C” , “B” , “A”)

사용된 수식을 하나씩 살펴보도록 하겠습니다.

먼저 값들의 위치(인덱스)부터 확인하겠습니다.

F – 1
D – 2
C – 3
B – 4
A – 5

 

다음은 위치 부분에 설정한 수식에 대해서 살펴보겠습니다.

SUM( INT (B3 >= { 90,80,70,60,0 } ) )

 

사용된 함수는, 합계를 구하는 SUM과 정수로 변화해주는 INT 함수입니다.

{} 안에는 배열 형식으로 값을 지정했습니다.

B3에 입력한 값이 {}배열 안에 있는 값과 하나씩 비교를 합니다.

비교 조건은 >= 으로 지정하였기 때문에 B3의 값이 배열보다 크거나 같은지 판단을 하게 됩니다.

만약 B3값이 배열 안에 값보다 크거나 같은 경우에는 TRUE를 작은 경우에는 FALSE를 반환합니다.

TRUE와 FALSE를 숫자로 표현하면 아래와 같습니다.

TRUE – 1

FALSE – 0

 

TRUE와 FLASE로는 위치를 지정할 수 없기 때문에 INT 함수를 사용하여 정수로 변환하여 합계를 구합니다.

만약 90점 이상이라면 합계는 5가 되고

50점이라면 합계는 0이 됩니다.

 

정리

엑셀의 CHOOSE 함수는 설정한 리스트 형태의 값들을 위치(인덱스)로 취득할 수 있는 함수입니다.

표현할 값들이 변동이 많지 않고 고정적일 경우에 유용하게 사용할 수 있습니다.

댓글