SWITCH 함수 활용법 — 중첩 IF 대신 깔끔하게 다중 값 매핑하기
부서 코드 3을 개발팀으로 바꾸는 일과 무게 3kg을 중형으로 분류하는 일은 비교 대상부터 다릅니다. SWITCH의 첫 번째 인자를 숫자 코드로 둘지 TRUE로 둘지 결정하기 전에, 이 두 질문을 나눠 적어 봅니다.
첨부의 코드매핑과 무게구간 시트에서 같은 차이를 재현합니다. 부서명과 무게 구간은 가상 규칙입니다. 이 가상 실습 입력은 배송요금이나 조직 기준을 나타내지 않습니다.


숫자 코드의 값 자체를 매핑하기
코드매핑!A2:A6에는 숫자 1, 2, 3, 4, 0이 있습니다. B열 기대 순서는 영업팀·마케팅팀·개발팀·기타·기타입니다. 등록되지 않은 숫자도 오류로 볼 것인지 기본값으로 처리할 것인지 먼저 정해야 합니다. 이 예제에서는 기타로 남깁니다.
=SWITCH(A2,1,"영업팀",2,"마케팅팀",3,"개발팀","기타")
Microsoft SWITCH 설명에 따르면 처음 일치한 값에 연결된 결과를 반환합니다. 위 수식에서 마지막 기타는 어느 숫자에도 맞지 않을 때의 기본값입니다. 기본값 없이 미등록 코드를 넣으면 오류가 날 수 있으므로, 일치 코드와 미등록 코드를 따로 시험합니다.
첨부에서는 E열의 ISNUMBER 검사와 ISLOGICAL 검사로 논리값을 제외합니다. A7의 문자 1과 A8의 실제 빈칸은 숫자 코드로 바꾸지 않고 숫자 확인을 표시합니다. 따라서 기타와 숫자 확인은 서로 다른 상태입니다. 원본에서 숫자와 문자를 섞어 쓰려면 이 규칙부터 새로 정해야 합니다.

무게 구간은 TRUE와 비교식을 대조하기
무게구간 시트의 기본 입력은 A2:A8의 1,2,3,4,5,6,9입니다. 1 이하 소형, 3 이하 중형, 5 이하 대형, 그 밖의 양수는 특대로 정했습니다.
| 입력 kg | 1 | 2 | 3 | 4 | 5 | 6 | 9 |
|---|---|---|---|---|---|---|---|
| 기대 구간 | 소형 | 중형 | 중형 | 대형 | 대형 | 특대 | 특대 |
입력이 유효한 양수일 때 D열이 계산하는 부분은 다음과 같습니다.
=SWITCH(TRUE,A2<=1,"소형",A2<=3,"중형",A2<=5,"대형","특대")
"<=1"은 글자이고 A2<=1은 비교식입니다. TRUE를 찾도록 한 위 수식에 조건을 글자로 바꿔 넣으면 의도한 크기 비교가 되지 않습니다. 작은 상한부터 검사하기 때문에 1은 소형에서 멈추고 3은 중형에서 멈춥니다.
H열은 일부러 큰 상한부터 검사한 반례입니다. 1도 5 이하이므로 대형이 됩니다. 이 열은 바른 분류 결과가 아니라 조건 순서가 바뀌면 어떤 오류가 생기는지 보여 주는 비교입니다. 본문의 고정 기대 E열을 H열 값으로 덮지 마세요.
빈칸을 소형으로 분류하지 않기
첨부는 G열에서 실제 숫자인지 먼저 확인하고 그다음 양수인지를 검사합니다. G2는 다음 수식입니다.
=IF(OR(ISLOGICAL(A2),NOT(ISNUMBER(A2))),"숫자 확인",IF(A2<=0,"양수 확인","분류"))
B:D열은 G열이 분류일 때만 각 함수를 실행합니다. 9행의 0과 10행의 -1은 양수 확인, 11행의 3kg와 12행의 실제 빈칸은 숫자 확인입니다. 빈칸을 임의로 0으로 채우거나 단위를 지워 숫자로 만들지 않습니다. 단위 변환이 필요하다면 원문과 변환 규칙을 따로 보관해야 합니다.

IF·IFS와 같은 규칙인지 비교하기
B열은 중첩 IF, C열은 IFS, D열은 SWITCH입니다. 세 열 모두 같은 G열 검사를 통과한 입력만 분류합니다. Microsoft IFS 문서의 첫 TRUE 조건 규칙을 이 가상 구간에 적용하면 세 열의 답은 같아야 합니다.
기본 입력에서는 F2:F12가 모두 TRUE입니다. 이 표시는 함수의 우열이나 실행 속도를 평가한 점수가 아닙니다. 같은 규칙을 세 표현으로 옮겼을 때 결과가 유지되는지를 확인합니다. 1·3·5 경계에서는 결과 셀과 고정 기대값을 직접 읽어 비교하세요.
사본에서 A2를 1.01로 바꾸면 B2:D2는 중형이 되고 F2는 FALSE입니다. E2는 기본 입력 1 전용 정답인 소형으로 남아 있기 때문입니다. 정답을 바꾸지 말고 A2를 1로 복구해 TRUE로 돌아오는지 확인합니다.
분류 오류를 찾는 복구 순서
가상 무게 1이 대형으로 나오는 분류 오류라면 D2의 첫 비교식이 A2<=5로 바뀌었는지 확인합니다. H2의 잘못된 순서와 같다면 작은 상한 1·3·5 순으로 복원합니다. 결과를 소형이라는 상수로 덮어쓰면 다음 입력을 검사할 수 없습니다.
한 행만 다르면 그 행의 A셀 참조와 E열 기대값을 확인합니다. 예를 들어 D4가 A3을 참조하도록 바뀌어도 이번 입력에서는 둘 다 중형이어서 놓칠 수 있습니다. A4에 3.01을 넣는 사본 실습으로 참조가 실제 해당 행을 따라가는지 확인한 뒤 숫자 3으로 되돌립니다.
코드매핑!A2를 숫자 4로 바꾸면 B2는 기타, D2는 FALSE여야 합니다. 다시 1로 복구하면 영업팀과 TRUE입니다. 미등록 코드 결과를 개발팀 같은 기존 부서명으로 임의 치환하지 않습니다.

다른 파일로 옮길 때 남는 경계
SWITCH·IFS 실습 전에는 링크한 공식 문서의 적용 대상을 열어 받는 사람의 환경과 대조하세요. 함수 이름을 인식하지 못하면 원본 열을 지우기 전에 같은 입력을 지원되는 IF 표현과 대조하세요. 이 첨부의 LibreOffice 재계산과 Microsoft Excel 앱 실행은 별개의 검증입니다.
부서가 늘고 이름이 자주 바뀌면 별도 코드 대응표가 수식 안의 긴 목록보다 관리하기 쉬울 수 있습니다. 다만 목록표로 옮겨도 미등록 코드, 문자 코드, 빈칸의 처리 계약은 그대로 정해야 합니다. 이 글은 대소문자 구분, 실제 운임, 세금, 대량 처리 성능을 검증하지 않습니다.

첨부에서 확인할 순서
-
코드매핑!A2:A6의 숫자1·2·3·4·0과 B열의 부서명을 같은 행끼리 대조합니다.
-
무게구간!A2:A8의1·2·3·4·5·6·9를 읽고 SWITCH 결과 D열을 E열의 고정 구간과 비교합니다.
-
H2의 잘못된 큰 상한 우선 수식이1kg을 대형으로 분류하는지 확인합니다.
-
사본 A2를1.01로 바꿔 D2의 중형을 확인한 뒤1로 복구하고 F2의TRUE를 봅니다.
SWITCH는 처음 일치한 값에 연결된 결과를 반환합니다.
IFS는 처음 TRUE인 조건에 해당하는 값을 반환합니다.
출처 원문 수집일: S1 2026-09-24; S2 2026-09-24.