엑셀 SWITCH 함수는 여러 개의 값과 비교하여 일치하는 하나의 값을 구해줍니다.
SWITCH 함수와 기능이 비슷한 CHOOSE 함수는 표현식이 숫자로 된 값만 가능하고 기능이 제한적입니다. SWITCH 함수는 숫자 뿐만 아니라 문자로도 비교가 가능하고 비교할 값이 없을 때 기본값을 지정할 수 있으며 기능적으로 CHOOSE 함수를 완전히 대체할 수 있습니다.
CHOOSE함수에 대해서는 다음 다음 링크를 참고하세요.
[ 엑셀CHOOSE 함수 사용법 ]
구문(Syntax)
SWITCH(expression, value1, result1, [default or value2, result2],…[default or value3, result3])
여러 개의 값과 비교하여 일치하는 값을 구해준다.
인수
- expression : 비교할 값
- value1 : 비교되는 값
- result1 : expression과 value1이 일치할 때 반환되는 값
- default or value2 : value1에 일치하는 값이 없을 때 반환되는 기본값 또는 value2
총 126개까지 비교조건을 설정할 수 있다.
엑셀 2019 이상 버전에서 사용 가능
사용 예
다음과 같이 평가 등급표가 있을 때 평가 등급에 해당하는 '등급 표시'를 구해보겠습니다.
| 평가등급 | 등급표시 |
| S | 탁월 |
| A | 우수 |
| B | 보통 |
| C | 미흡 |
| D | 부진 |
1) 평가 등급별 등급표시 구하기

개인별 평가 등급에 해당하는 등급 표시를 구하려면 [D15] 셀에 다음 수식을 입력합니다.
=SWITCH(C15,"S","탁월","A","우수","B","보통","C","미흡","D","부진")
[C15] 셀에 입력된 평가등급이 'S'이면 '탁월', 'A'이면 '우수', 'B'이면 '보통', 'C'이면 '미흡', 'D'이면 '부진'을 반환하라는 의미입니다.그런데 19행을 보면 수식에 없는 엉뚱한 값 'F'가 입력되어 있어서 #N/A가 오류가 발생했고 나머지 인원들의 등급표시는 정상적으로 구해졌습니다.
2) 평가 등급별 등급표시 + 기본값을 이용하여 오류처리
앞에서 살펴본 수식에서는 일치하는 값이 없으면 #N/A 오류가 발생합니다.
수식과 일치하는 값이 없을 때는 다음과 같이 반환되는 기본값("**값오류**")을 수식의 마지막에 적어주면 기본값이 표시되고 #N/A오류가 발생하지 않습니다.

=SWITCH(C24,"S","탁월","A","우수","B","보통","C","미흡","D","부진","**값오류**")
28행을 보면 수식에 없는 'F'가 입력되었지만 오류는 발생하지 않고 '**값오류**'로 표시됩니다.
위의 예를 SWITCH 함수 대신 IF 함수를 여러 번 중첩하여 해결할 수도 있습니다. 수식이 복잡하여 사용하기 까다로우므로 SWITCH 함수를 사용하는 것이 더 편리합니다.
=IF(C33="S","탁월",IF(C33="A","우수",IF(C33="B","보통",IF(C33="C","미흡",IF(C33="D","부진","**값오류**")))))

관련 글
IF 함수 - 조건 판별하기 - 엑셀 IF 함수는 조건을 판별하여 조건을 만족할 때와 만족하지 못할 때 각각 정해진 값을 반환합니다. IF 함수에는 프로그래밍에서 사용하는 분기(조건에…
AND 함수 - 여러 조건 판별하기 - 엑셀에서 조건을 판별할 때 IF 함수를 주로 사용하는데, '여러 조건을 모두 만족하는지 판별'할 때는 IF 함수를 여러 번 중첩해야 합니다.…
NOT 함수 - 논리값을 반대로 바꾸기 - 엑셀 NOT 함수는 논리값을 반대로 바꿉니다. 어떤 수식의 결과가 참(TRUE)이면 거짓(FALSE)을 반환하고 거짓(FALSE)이면 참(TRUE)을 반환합니다. 그런데 NOT 함수를 어디에 쓸…
OR 함수 - 하나라도 만족하는지 판별하기 - 엑셀 OR 함수는 여러 조건 중에서 하나라도 만족하는지 판별할 때 사용하는 논리 함수입니다. 예를 들어 여러 목표 중에 하나라도 달성한…
XOR 함수 - 배타적 논리합 구하기 - 엑셀에서 '여러 조건에서 하나만 만족하거나 홀수 개를 만족하는지 판별'해야 할 때는 배타적 논리합을 구하는 XOR 함수를 사용합니다. 함수 이름 XOR은…
IFS 함수 - 여러 조건을 판별하고 값 구하기 - 엑셀 IFS 함수는 IF 함수에 S가 붙은 형태입니다. S는 영어에서 복수형일 때 붙으므로 IF가 여러 개 있는... 조건을 여러 개를…
논리함수 - TRUE, FALSE - 엑셀에서 TRUE, FALSE는 논리값으로 사용되는데, 논리값을 반환하는 TRUE, FALSE라는 이름의 함수도 있습니다. 이 함수는 거의 쓸일이 없고 다른 스프레드시트 프로그램과의…