들어가기 전에
Excel의 SWITCH 함수는 데이터 조작(manipulate)에 사용되는 논리 함수로, 값 목록에 대해 표현식을 평가하고 일치하는 첫 번째 값에 해당하는 결과를 반환합니다. 이 함수가 인기를 끄는 이유는 비슷한 작업을 수행하는 다른 Excel 함수보다 간단하기 때문입니다. 실제 사례를 통해 SWITCH 함수를 사용하는 방법과, 다른 함수에 비해 좋은 점을 소개합니다. 참고로, SWITCH는 Excel 2019 버전부터 지원되는 함수입니다.
이 글은 아래 기사 내용을 토대로 작성되었습니다만, 필자의 개인 의견이나 추가 자료들이 다수 포함되어 있습니다.
- 원문: How to Use the SWITCH Function in Excel
- URL: https://www.howtogeek.com/how-to-use-the-switch-function-in-excel/
SWITCH 함수 구문
SWITCH의 실제 사용 예시를 보기 전에 사용 구문을 살펴봅니다.
=SWITCH(e,v1,r1,v2,r2,d)
- e: 표현식(평가할 값)
- v1: 표현식과 비교될 첫 번째 값
- r1: v1이 e와 일치할 경우 반환되는 결과
- v2: 표현식과 비교할 두 번째 값
- r2: v2가 e와 일치하는 경우 반환되는 결과
- d(선택 사항): e가 v 값 중 어느 것과도 일치하지 않는 경우 기본값
위 구문에는 두 개의 v-r 페어링만 표시되어 있지만(v1-r1 및 v2-r2), 전체적으로 최대 126개의 페어링을 가질 수 있습니다. SWITCH는 첫 번째 일치하는 값에 해당하는 결과를 반환하므로 v-r 페어링의 순서를 신중하게 고려하는 것이 중요합니다. 선택 사항인 d를 포함하지 않고 어떤 값(v#)도 표현식(e)과 일치하지 않으면 Excel에서 #N/A 오류를 반환합니다.
SWITCH 함수 사용 예
SWITCH 함수에 대한 실제 사용 예제를 살펴보겠습니다. 이 표에는 학생 목록과 학생의 성적이 있으며, 이 성적을 기준으로 다음 단계를 계산해야 합니다.
세 가지 등급 가능성(A, B, C)이 있으므로 이 모든 것을 스위치 수식에 통합해야 합니다. C2 셀에 다음과 같이 입력합니다.
=SWITCH([@Grade],"A","Automatically advance to next level","B","Continue at this level","C","Move down to previous level","GRADE REQUIRED")
언뜻 복잡해 보이지만, 자세히 살펴보면 실제로는 매우 논리적입니다.
- 먼저, Excel에서 서식 있는 표의 성적 열에 있는 표현식을 평가하기를 원하므로 [@Grade]를 값 e로 입력했습니다.
- 그런 다음 세 개의 v-r 쌍이 있습니다: “A"는 ‘자동으로 다음 레벨로 진행’, ‘B’는 ‘이 레벨에서 계속’, ‘C’는 ‘이전 레벨로 이동’을 반환합니다.
- 마지막으로, 마지막 페어링 후에는 값(v#)이 표현식(e)과 일치하는 값이 없는 경우의 결과인 “성적 필요”를 값 d로 명시했습니다.
Enter 키를 누르면 데이터가 형식이 지정된 Excel 표에 있으므로 나머지 C 열이 자동으로 채워집니다.
B8 셀의 표현식이 내 스위치 수식의 값과 일치하지 않기 때문에 C8 셀에 “등급 필요”가 포함된 것을 알 수 있습니다. C 열의 출력을 변경하려면 C2 셀로 돌아가 수식 입력란에서 수식을 수정한 다음 Enter 키를 누릅니다. 그러면 이 변경 사항이 C 열의 다른 셀에 자동으로 적용됩니다.
IF, IFS, XLOOKUP 대신 SWITCH를 사용하는 이유
IF, IFS, XLOOKUP과 같이 유사한 작업을 수행하는 Excel의 다른 함수 대신 SWITCH를 사용하는 이유가 궁금할 수 있습니다. 몇 가지 이유가 있습니다.
표현식 반복 방지
IF 또는 IFS를 사용하여 위 표에서 동일한 결과를 만들려면 매번 표현식을 반복해야 합니다.
=IFS([@Grade]="A","Automatically advance to next level",[@Grade]="B","Continue at this level",[@Grade]="C","Move down to previous level")
하지만 SWITCH 함수를 사용하면 수식을 시작할 때 표현식을 한 번만 명시하면 됩니다.
=SWITCH([@Grade],"A","Automatically advance to next level","B","Continue at this level","C","Move down to previous level","GRADE REQUIRED")
그 결과, SWITCH 함수를 더 읽기 쉽고, 입력 오류가 적으며, 문제가 있는지 쉽게 검토할 수 있습니다.
모든 것을 한곳에 보관
SWITCH와 마찬가지로 XLOOKUP 함수는 표현식을 값 목록과 비교하여 해당 값을 반환합니다. 하지만 XLOOKUP에서는 값 목록이 별도의 테이블에 있는 반면, SWITCH는 모든 값을 하나의 수식에 통합합니다. 즉, 부동 데이터가 없으므로 Excel 스프레드시트가 깔끔하게 유지됩니다.
하나의 괄호 세트
위 표에서와 동일한 결과를 얻기 위해 중첩된 IF 함수를 사용한다면 각 IF 인수에 대해 새로운 괄호 집합을 사용해야 합니다.
=IF([@Grade]="A","Automatically advance to next level",IF([@Grade]="B","Continue at this level",IF([@Grade]="C","Move down to previous level","GRADE REQUIRED")))
그 결과, 수식이 세 개의 닫는 괄호로 혼란스럽게 끝나고 구문 관련 문제를 디버깅하기가 더 어려워집니다. 반면에 다른 추가 기능 없이 가장 기본적인 수준에서 사용할 경우 SWITCH는 괄호 한 쌍만 필요합니다.
SWITCH 함수의 단점
SWITCH에는 많은 장점이 있지만, Excel 스프레드시트 작업을 하기 전에 염두에 두어야 할 몇 가지 제한 사항이 있습니다.
- 연산자(예: < 또는 >)를 사용하거나 표준 SWITCH 구문과 대략적인 일치를 사용할 수 없습니다. 대신 SWITCH는 정확히 일치하는 경우로만 제한됩니다.
- 잠재적인 값과 결과가 많은 경우 처음에 SWITCH 수식을 구성하는 데 시간이 오래 걸립니다. 개인적으로는 SWITCH 수식에 값-결과 쌍을 7~8개 이하로 사용하는 것이 좋습니다.
- SWITCH는 비교적 유연하지 않은 함수입니다. 예를 들어, XLOOKUP은 단일 값이 아니라 데이터의 전체 행과 열을 반환할 수 있습니다.
- SWITCH에는 많은 쉼표가 필요하므로 수식을 수동으로 입력할 경우 실수하기 쉽습니다.
마치며
SWITCH는 Excel 표에서 데이터를 사용하는 여러 가지 방법 중 하나일 뿐입니다. 값을 찾으려면 INDEX를 사용하고, 값의 위치를 찾으려면 MATCH를 사용하거나, 양방향 조회를 만들려면 INDEX와 MATCH를 함께 사용하는 것도 고려해 볼 수 있습니다. 다양한 함수를 알고 있으면 상황에 맞게 대처할 수 있습니다.
'Excel' 카테고리의 다른 글
데이터 분석을 위해 Excel Power Query를 사용해야 하는 5가지 이유 (33) | 2024.12.05 |
---|---|
8가지 유형의 Excel 차트와 사용 시기 (31) | 2024.12.05 |
데이터를 돋보이게 하는 Excel 서식 지정 트릭 9가지 (34) | 2024.12.03 |
Excel을 통해 일상 생활을 자동화하거나 관리하는 4가지 방법 (36) | 2024.12.02 |
복잡한 Excel 수식을 손쉽게 작성하는 방법 (35) | 2024.12.01 |