중첩 IF (다중 IF): 조건이 3개 이상일 때 (수, 우, 미, 양, 가 등급 매기기)
안녕하세요! 여러분의 엑셀 멘토, 오피스 파트너입니다.
지난 시간에는 IF 함수의 가장 기초인 "60점 이상 합격, 아니면 불합격"을 판정하는 방법에 대해 알아봤습니다. 그런데 세상일이 그렇게 딱 둘로만 나뉘면 얼마나 좋을까요?
현실의 업무는 훨씬 복잡합니다.
"90점 이상은 A, 80점은 B, 70점은 C, 나머지는 F를 줘야 하는데..."
"매출 1억 이상은 인센티브 10%, 5천 이상은 5%, 나머지는 0%..."
이렇게 결과가 3가지 이상 나올 때는 IF 함수 하나로는 해결이 안 됩니다. 이때 필요한 것이 바로 IF 함수 안에 또 IF 함수를 넣는 '중첩 IF (Nested IF)' 기술입니다. 흔히 '다중 IF'라고도 부르죠.
오늘 이 글을 통해 엑셀 초보 탈출의 가장 큰 관문인 중첩 IF를 완벽하게 정복해 봅시다. (보너스로 더 쉬운 최신 함수 IFS도 알려드립니다!)

1. 중첩 IF의 원리: 꼬리에 꼬리를 무는 질문
중첩 IF의 핵심은 "아니라고? 그럼 이건 어때?"라고 계속 되묻는 것입니다. 마치 양파 껍질을 하나씩 벗겨내는 과정과 같습니다.
[논리 흐름]
- 너 90점 넘니? 👉 (응) 그럼 "수" 줄게.
- (아니) 👉 그럼 80점은 넘니? 👉 (응) 그럼 "우" 줄게.
- (아니) 👉 그럼 70점은 넘니? 👉 (응) 그럼 "미" 줄게.
- ... (계속 반복)
- 이도 저도 아니야? 👉 에잇, 넌 "가" 야.
2. 실전 예제: 수, 우, 미, 양, 가 등급 매기기
가장 대표적인 예제인 성적 처리를 해보겠습니다. 기준은 다음과 같습니다.
- 90점 이상: 수
- 80점 이상: 우
- 70점 이상: 미
- 60점 이상: 양
- 나머지(60점 미만): 가
2-1. 수식 작성하기 (Step by Step)
한 번에 쓰려고 하면 헷갈립니다. 하나씩 이어 붙여 보겠습니다.
1단계: '수'만 가려내기
=IF(A1>=90, "수", "나머지")
2단계: '나머지' 자리에 두 번째 IF 넣기 (우)
=IF(A1>=90, "수", IF(A1>=80, "우", "나머지"))
3단계: 계속 반복해서 완성하기
보시다시피 IF를 열 때마다 괄호 (가 하나씩 생기죠? 마지막에 닿을 때도 열었던 횟수만큼 괄호 ))))를 닫아줘야 에러가 나지 않습니다.
3. [중요] 중첩 IF 사용 시 주의사항 2가지
수식은 맞게 쓴 것 같은데 결과가 이상하게 나온다면? 99%는 아래 두 가지 이유 때문입니다.
① 순서가 생명이다 (내림차순 vs 오름차순)
엑셀은 앞에서부터 조건을 검사하다가, 참(True)이 나오면 뒤는 쳐다보지도 않고 끝내버립니다.
만약 =IF(A1>=60, "양", IF(A1>=90, "수"...)) 순서로 썼다고 해봅시다.
95점을 받은 학생은 60점 이상이기도 하죠? 그럼 엑셀은 "어? 60점 넘네? 너 '양'!" 하고 끝내버립니다. 95점이 '양'을 받는 억울한 상황이 생깁니다.
큰 숫자부터 조건을 걸 땐 👉 큰 수부터 작아지게 (90 -> 80 -> 70...)
작은 숫자부터 조건을 걸 땐 👉 작은 수부터 커지게 (60 -> 70 -> 80...)
순서가 뒤죽박죽이면 엑셀도 뒤죽박죽이 됩니다.
② 괄호 갯수 맞추기
IF를 4번 썼다면 마지막 괄호도 4개여야 합니다. 엑셀 최신 버전은 마지막 괄호를 안 닫고 엔터를 쳐도 "자동으로 닫아드릴까요?"라고 묻지만, 습관을 들이는 게 좋습니다.
4. [최신 꿀팁] 구세주의 등장: IFS 함수
위의 중첩 IF 식을 보니 어떠신가요? 괄호가 너무 많아서 현기증이 나지 않나요? 엑셀 개발자들도 그걸 알았는지, 엑셀 2019 및 오피스 365 버전부터는 IFS 함수를 만들었습니다.
IF 뒤에 S가 붙었죠? "IF가 여러 개(plural)"라는 뜻입니다.
4-1. IFS 함수 공식
더 이상 IF를 계속 쓸 필요도, 마지막에 괄호를 왕창 닫을 필요도 없습니다. 그냥 조건과 결과를 나열하기만 하면 됩니다.
4-2. IFS로 수/우/미/양/가 구현하기
=IFS(A1>=90, "수", A1>=80, "우", A1>=70, "미", A1>=60, "양", TRUE, "가")
잠깐! 마지막에 TRUE는 뭔가요?
IFS 함수는 "나머지"를 처리하는 기능이 따로 없습니다. 그래서 마지막에 "여기까지 왔다면 무조건 참(TRUE)이야"라고 강제로 조건을 걸어주고, 나머지 결과("가")를 적어주는 방식을 씁니다. 이 부분이 핵심 포인트입니다.
5. IF vs IFS 한눈에 비교
| 구분 | 중첩 IF (전통 방식) | IFS 함수 (최신 방식) |
|---|---|---|
| 복잡도 | 높음 (괄호 지옥) | 낮음 (깔끔함) |
| 호환성 | 모든 엑셀 가능 | 2019 버전 이상만 가능 |
| 나머지 처리 | 자동 (맨 뒤 값) | TRUE, "값" 입력 필요 |
여러분의 엑셀 버전이 최신이라면 IFS를, 회사 컴퓨터가 옛날 버전이거나 동료에게 파일을 보내야 한다면 안전하게 중첩 IF를 쓰는 것을 추천합니다.
오늘은 조건이 여러 개일 때 사용하는 중첩 IF와 IFS 함수에 대해 알아보았습니다.
이 기능만 자유자재로 다뤄도 "엑셀 좀 하네?"라는 소리를 들으실 수 있습니다. 성적표뿐만 아니라 할인율 계산, 배송비 책정 등 실무에서 활용도가 무궁무진하니 꼭 직접 타이핑해 보시길 권장합니다.
그런데 수식을 쓰다 보면 #DIV/0!이나 #N/A 같은 보기 싫은 에러 메시지가 뜰 때가 있죠? 다음 시간에는 이런 에러가 떴을 때, 당황하지 않고 "확인 필요" 같은 깔끔한 문구로 바꿔주는 IFERROR 함수에 대해 알아보겠습니다.
여러분의 엑셀 실력이 쑥쑥 크는 그날까지! 도움이 되셨다면 공감과 댓글 부탁드립니다.