엑셀 IFS·SWITCH 함수로 중첩 IF 줄이기: 조건 분기 가이드
IFS와 SWITCH를 쓰면 중첩 IF의 괄호를 줄일 수 있지만, 잘못 정한 기준까지 고쳐 주지는 않습니다. 특히 ‘최소 매출액’ 표를 만들고 수식에서는 작은 금액부터 <=로 비교하면 겉보기에는 그럴듯한 다른 결과가 나옵니다. 이 글은 7,500만 원에 20%가 적용되는 가상 구간표와 상품 코드 5개를 통해 조건 순서와 값 비교를 구분합니다.
다운로드 파일의 금액구간 시트에는 IFS 수식과 경계값 10개가, 코드변환 시트에는 SWITCH 수식과 코드 5개가 들어 있습니다. 모든 행은 가상 입력입니다. 수수료율과 상품명은 수식 연습을 위해 정한 가상 규칙이며 실제 회사의 정책이나 금전 판단 기준이 아닙니다. IFS·SWITCH가 지원되는 Excel에서 사본으로 따라 하세요. 함수 지원 범위는 아래 Microsoft 문서의 적용 대상을 확인하면 됩니다.


1. 기준표가 최소값인지 최대값인지 먼저 정하기
금액구간 시트 F1:G4에 다음 표가 있습니다. F열의 값은 그 비율이 시작되는 최소 매출액입니다. 금액은 쉼표 문자를 붙인 텍스트 대신 숫자로 입력하고, 셀 표시 형식만 천 단위 구분으로 지정합니다. 예제 G열은 문자열 "20%"가 아니라 숫자 0.2를 백분율로 표시한 값입니다.
| 최소 매출액 | 가상 수수료율 | 포함하는 범위 |
|---|---|---|
| 0 | 30% | 0 이상, 50,000,000 미만 |
| 50,000,000 | 20% | 50,000,000 이상, 100,000,000 미만 |
| 100,000,000 | 10% | 100,000,000 이상 |
이 표에서 75,000,000은 50,000,000 이상이면서 100,000,000 미만입니다. 가상 매출액 75,000,000이 두 번째 구간에 속하므로 IFS 수식의 예상 비율은 20%입니다. 같은 예제 표를 두고 75,000,000<=100,000,000이 참이라는 이유만으로 10%를 고르면 기준의 방향을 바꾼 셈입니다. 수식을 만들기 전에 이 한 행을 손으로 분류해 두면 그런 오류를 잡기 쉽습니다.
이번 정상 입력 범위는 0 이상의 숫자 금액입니다. 음수, 빈칸, 금액미입력 같은 텍스트는 구간을 정하지 않고 입력확인으로 남깁니다. 예제의 마지막 기본값이 30%라는 이유로 잘못된 입력까지 30%로 받아들이지 않습니다.
2. 큰 최소값부터 IFS로 비교하기
A1:D1의 머리글은 가상 매출액, IFS 수수료율, 초기 기대값, 검산입니다. A2에 매출액을 넣고 B2에 다음 수식을 입력합니다. 파일에서는 A2:A11에 경계값과 잘못된 입력 사례가 이미 들어 있습니다.
=IF(NOT(ISNUMBER(A2)),"입력확인",IF(A2<0,"입력확인",IFS(A2>=$F$4,$G$4,A2>=$F$3,$G$3,TRUE,$G$2)))
바깥 IF는 숫자가 아닌 입력과 음수를 먼저 구분합니다. 정상 숫자이면 IFS가 100,000,000 이상인지부터 검사하고, 아니면 50,000,000 이상인지 확인합니다. 정상 입력 중 두 조건이 모두 거짓이면 IFS 수식은 기준 셀 G2의 가상 비율 30%를 반환합니다. Microsoft IFS 설명은 처음 참인 조건에 대응하는 결과를 반환한다고 명시합니다.
기준 셀 F3·F4와 G2:G4는 아래 행으로 채워도 움직이면 안 되므로 절대 참조를 사용합니다. 입력 A2는 행에 따라 A3, A4로 바뀌어야 합니다. B2:B11까지 채운 뒤 B5를 보면 75,000,000이 있는 A5를 참조하고 기준표 주소는 그대로여야 합니다. 가상 입력 A5=75,000,000에 대응하는 IFS 수식 셀 B5의 기대 결과는 20%입니다.
아래 표의 초기 기대값을 C2:C11에 직접 넣고 D2에 =IF(B2=C2,"일치","확인")를 입력해 D11까지 채웁니다. 기대값을 B열에서 복사해 만들면 잘못된 수식까지 정답으로 복제하므로 별도의 기준이 되지 않습니다.
| A열 입력 | C열 초기 기대값 | 확인할 경계 |
|---|---|---|
| 0 | 30% | 정상 범위의 시작 |
| 49,999,999 | 30% | 5천만 원 바로 아래 |
| 50,000,000 | 20% | 두 번째 구간의 시작 포함 |
| 75,000,000 | 20% | 두 번째 구간 내부 |
| 99,999,999 | 20% | 1억 원 바로 아래 |
| 100,000,000 | 10% | 세 번째 구간의 시작 포함 |
| 120,000,000 | 10% | 세 번째 구간 내부 |
| -1 | 입력확인 | 음수는 계산 보류 |
| 빈칸 | 입력확인 | 값이 없음 |
| 금액미입력 | 입력확인 | 숫자가 아닌 텍스트 |
초기 입력에서는 검산 10칸이 모두 일치해야 합니다. 마지막 세 행이 입력확인인 것도 정해 둔 처리 결과입니다. 오류 없이 숫자가 나왔는지만 보지 말고, 계산하지 말아야 할 입력을 별도로 남겼는지 함께 확인합니다.

3. 조건 순서를 바꿨을 때 틀리는 행 찾기
사본에서 IFS 안의 50,000,000 이상 조건을 맨 앞으로 옮겨 보세요. 예제 입력 120,000,000도 그 조건을 만족하므로 20%가 먼저 반환되고, 기대값 10%와 달라집니다. Excel은 첫 번째 참 조건을 정확히 처리했지만 작성자가 구간 우선순위를 잘못 준 경우입니다.
복구할 때는 큰 최소값인 100,000,000을 먼저 비교하도록 되돌립니다. 그 후 120,000,000 한 행만 확인하지 말고 50,000,000과 100,000,000의 경계 두 행도 다시 검사합니다. >=를 >로 바꾸면 경계와 같은 금액이 바로 아래 구간으로 내려가기 때문입니다.
기준표를 고쳐 실제 다른 가상 규칙을 시험할 때는 고정된 C열 기대값도 새 규칙에서 따로 도출해야 합니다. D열의 확인 표시를 없애려고 계산 결과를 C열에 일괄 붙여넣는 방식은 피합니다. 새 최소값, 포함 방향, 적용 비율을 먼저 기록한 뒤 경계 바로 아래·경계값·구간 내부의 세 입력을 비교합니다.
4. SWITCH는 하나의 코드가 같은지 비교하기
금액의 크기를 나누는 작업과 코드의 뜻을 찾는 작업은 다릅니다. 코드변환 시트 A2:A6에는 A101, A102, B201, Z999, 빈칸이 들어 있습니다. 이 글의 가상 대응표는 A101→스마트폰, A102→태블릿, B201→노트북이며, 나머지는 확인필요입니다.
B2에 다음 수식을 넣고 B6까지 채웁니다.
=SWITCH(A2,"A101","스마트폰","A102","태블릿","B201","노트북","확인필요")
첫 인수 A2는 비교할 값이고, 뒤에는 코드와 반환할 이름의 쌍이 이어집니다. 마지막 확인필요는 일치하는 코드가 없을 때의 기본값입니다. Microsoft SWITCH 문서는 하나의 값을 목록과 비교하고 첫 일치 항목에 대응하는 결과를 반환하는 구조를 설명합니다.
| 입력 코드 | 기대 결과 |
|---|---|
| A101 | 스마트폰 |
| A102 | 태블릿 |
| B201 | 노트북 |
| Z999 | 확인필요 |
| 빈칸 | 확인필요 |
아래로 채운 B3에서 비교 셀은 A3으로 바뀌어야 하지만 따옴표 안의 A101, A102, B201은 그대로여야 합니다. 이 문자열은 셀 주소가 아니라 상품 코드입니다. 복사한 수식이나 다른 도구가 만든 파일을 사용할 때도 입력 참조와 고정 문자열을 구별해 읽어야 합니다.
C열에는 위의 기대 결과를, D열에는 =IF(B2=C2,"일치","확인") 형태의 비교 수식을 둡니다. 초기 다섯 행이 모두 일치하는지 확인한 뒤 A3을 Z999로 바꾸는 시험을 해 보세요. B3은 확인필요가 되어야 합니다. 시험 후 A3을 A102로 되돌리면 다시 태블릿이 나와야 합니다.

5. 잘못된 값이 나왔을 때 확인할 순서
IFS에서 75,000,000이 30%로 나오면 금액이 숫자로 저장돼 있는지와 F3 참조를 먼저 봅니다. 텍스트 입력은 이 수식에서 입력확인으로 나와야 하므로, 다른 숫자 비율이 나온다면 수식 자체가 예제와 달라졌는지도 살펴봅니다. 수식 문자열의 쉼표와 따옴표는 인수 구분용이며, 사용 환경의 구분자 설정에 따라 직접 입력 방식이 달라질 수 있습니다.
SWITCH에서 A102가 확인필요로 나오면 앞뒤 공백이나 다른 문자가 섞였는지 수식 입력줄에서 원본을 확인합니다. 무조건 문자열을 잘라 맞추면 서로 다른 코드를 같은 것으로 바꿀 수 있습니다. 사본 한 행에 정확한 A102를 입력해 비교한 뒤 원본 정규화가 필요한지 판단합니다. 목록에 없는 실제 코드를 임의의 상품명으로 배정하지 않습니다.
함수 이름 자체가 인식되지 않으면 설치본 정보와 문서의 적용 대상을 대조하세요. 정상 결과를 얻기 위해 오류를 빈 문자열로 감추지 마세요. 지원되는 환경에서 파일을 열거나, 같은 기준을 IF 또는 별도 조회표로 구현한 뒤 동일한 기대값을 대조해야 합니다. 다른 구현을 쓰더라도 5천만 원·1억 원 경계의 포함 방향은 유지해야 합니다.
6. 지원 환경과 입력 범위의 한계
Microsoft IFS와 SWITCH 문서의 적용 대상에 Excel for Microsoft 365가 포함됩니다. 이 글은 그 환경을 기준으로 설명합니다. 설치본 정보는 IFS 설명과 SWITCH 문서의 적용 대상과 대조하세요. 함수 이름 오류를 빈 문자열로 감추지 않습니다.
가상 금액 검산은 원 단위 정수 입력 0부터 120,000,000까지의 경계 사례와 음수·빈칸·텍스트 사례를 대상으로 했습니다. 수식 자체는 정상 소수도 비교하지만 소수 금액 반올림, 환율 환산, 실제 계약의 수수료 규칙까지 검증한 예제는 아닙니다. 코드 입력은 A101·A102·B201의 정확한 대응만 정의했고, 공백 제거로 실제 다른 코드를 합치는 처리는 넣지 않았습니다.
조건이나 코드가 자주 바뀌고 항목이 많아지면 긴 수식을 여러 사람이 동시에 고치기보다 관리용 대응표를 따로 두는 편이 추적하기 쉽습니다. 여기서는 세 금액 구간과 세 코드만 사용해 IFS의 순서와 SWITCH의 값 비교를 드러냈습니다. 모든 업무 분기를 한 수식으로 합치는 것이 목표는 아닙니다.
출처 원문 수집일: S1 2026-09-23; S2 2026-09-23. 공식 문서는 함수 동작을 확인하는 근거이고 매출액·비율·상품 코드는 가상 예제입니다. 첨부의 IFS 10개 입력과 SWITCH 5개 입력은 별도 계산 도구로 검산했습니다. Excel 앱 실행이나 실제 수수료 산정을 수행한 기록은 아닙니다.