엑셀 ifs 함수, 상황별로 꼭 봐야 할 주의점
엑셀 ifs 함수를 조건 개수와 버전, 참조 방식에 따라 언제 쓰고 언제 피해야 하는지 정리합니다.
7개 섹션
이 글의 차례 · 7개 섹션
엑셀 ifs 함수는 조건이 여러 개일 때 IF를 겹겹이 쓰지 않고 한 번에 판정하게 해주는 함수다.
다만 조건 개수, 엑셀 버전, 셀 참조 방식에 따라 같은 수식도 다른 결과를 낸다.
지금 화면에 뜬 오류나 이상한 값이 어느 상황에서 생겼는지부터 짚어야 한다.
조건 개수별로 IFS를 써야 하는 기준
조건이 3개 이하일 때는 IF 중첩이 오히려 편하다
조건이 2~3개 정도면 IF를 겹쳐 써도 괄호가 많지 않아 헷갈리지 않는다. 이 정도 규모에서는 IFS로 바꿔도 체감 속도 차이가 거의 없다.

조건이 4개를 넘어가면 상황이 달라진다. IF 중첩은 괄호 짝을 맞추기 어려워지고 어디서 잘못됐는지 찾기도 힘들어진다.
이 지점부터는 IFS가 확실히 유리하다. 조건과 결과를 나란히 나열하는 구조라 수식 자체를 읽기가 쉽다.
조건이 6개를 넘으면 IFS도 가독성이 떨어진다. 이때는 별도 기준표를 만들어 VLOOKUP으로 찾는 방식이 관리하기 더 쉽다.
엑셀 버전별로 IFS가 안 보이는 경우
2016 이전 버전에는 IFS 자체가 없다
IFS 함수는 엑셀 2019와 Microsoft 365부터 정식으로 추가됐다. 2016 이하 버전에는 함수 목록에 아예 존재하지 않는다.
회사 PC가 오래된 버전이면 IFS를 입력해도 #NAME? 오류만 뜬다. 이 경우는 오타 문제가 아니라 함수 자체가 없는 것이다.
같은 파일을 다른 PC에서 열었을 때만 오류가 난다면 버전 차이를 먼저 의심해야 한다. 파일이나 수식은 정상인 경우가 많다.
버전을 바꿀 수 없다면 대안은 두 가지다. IF 중첩으로 되돌리거나, 구글 시트처럼 IFS를 지원하는 다른 프로그램으로 옮기는 방법이 있다.
#N/A 오류가 뜨는 상황과 해결
모든 조건이 거짓이면 IFS는 #N/A를 돌려준다
IFS는 나열한 조건 중 하나도 맞지 않으면 #N/A를 반환한다. IF와 달리 기본값이 자동으로 만들어지지 않는다.
이 오류를 막으려면 마지막 조건 자리에 TRUE를 넣고 기본 결과를 지정하면 된다. 이 한 줄만 추가해도 대부분 해결된다.
데이터에 빈 셀이나 예상 밖의 값이 섞여 있을 때도 같은 오류가 난다. 조건식이 그 값을 아예 걸러내지 못하기 때문이다.
오류가 특정 행에서만 뜬다면 그 행의 원본 값을 직접 눌러 확인하는 게 빠르다. 숫자처럼 보이지만 실제로는 텍스트인 값이 원인인 경우가 많다.
- =IFS(조건1, 결과1, 조건2, 결과2, TRUE, "기본값")
- 조건은 왼쪽부터 순서대로 검사된다.
- 마지막에 TRUE를 넣어야 #N/A를 막을 수 있다.
조건 순서를 잘못 넣어서 결과가 틀리는 경우
범위가 겹치는 조건은 앞에 있는 것이 먼저 적용된다
IFS는 조건을 앞에서부터 순서대로 검사하다가 처음 맞는 조건에서 멈춘다. 뒤에 있는 조건은 아예 확인하지 않는다.
점수 구간을 나눌 때 큰 값 조건을 뒤에 두면 중간 구간이 통째로 묻힌다. 90점 이상 조건을 맨 뒤에 두면 90점도 60점 조건에 먼저 걸린다.
이런 실수는 수식 자체는 정상이라 에러 표시가 뜨지 않는다. 결과 값이 이상해 보일 때만 뒤늦게 발견된다.
구간을 나누는 조건이라면 큰 값이나 더 엄격한 조건을 항상 앞에 배치해야 한다. 순서만 바꿔도 결과가 맞아떨어진다.
셀 참조 방식 때문에 결과가 어긋나는 경우
채우기 핸들로 복사하면 참조가 같이 움직인다
IFS 안의 기준 범위를 상대참조로 두면 아래로 채울 때마다 참조 위치가 같이 밀린다. 별도 기준표를 참조하는 경우 특히 문제가 커진다.

기준이 되는 표는 $ 기호로 고정한 절대참조로 써야 한다. 조건이 비교하는 데이터 셀만 상대참조로 남긴다.
참조 방식이 헷갈리면 F4 키로 절대·상대·혼합 참조를 바꿔가며 눈으로 확인하는 게 빠르다.
다른 시트의 표를 참조할 때는 시트 이름이 바뀌지 않았는지도 확인해야 한다. 시트명을 수정하면 수식이 그대로 깨질 수 있다.
IFS 대신 다른 함수를 써야 하는 상황
조건이 텍스트 목록과 매칭될 때는 VLOOKUP이 낫다
조건이 숫자 구간이 아니라 정해진 목록과 정확히 일치해야 한다면 VLOOKUP이나 XLOOKUP이 더 간단하다. IFS로 쓰면 조건식이 불필요하게 길어진다.
조건이 하나뿐이고 참과 거짓만 나누면 IFS를 쓸 이유가 없다. 기본 IF 하나로 충분하다.
기준표가 자주 바뀌는 구조라면 함수 안에 값을 직접 넣지 말고 별도 표로 만들어 참조하는 편이 관리하기 쉽다.
상황에 맞는 함수는 아래 기준으로 고르면 된다.
- 조건이 2개 이하고 단순 판정이면 IF
- 조건이 4개 이상이고 숫자 구간이면 IFS
- 조건이 텍스트 목록과 매칭이면 VLOOKUP·XLOOKUP
- 기준표가 자주 바뀌면 별도 표와 LOOKUP 계열 조합
자주 묻는 질문
Q. IFS 함수가 안 보이거나 안 써지는데 왜 그런가요?
A. 엑셀 2016 이하 버전에는 IFS 함수가 포함돼 있지 않습니다. 함수 목록에 없거나 #NAME? 오류가 뜬다면 버전 문제일 가능성이 높습니다.
Q. 조건을 다 만족하는데도 #N/A가 뜨는 이유는 뭔가요?
A. 조건식이 실제 데이터의 형식과 맞지 않는 경우가 많습니다. 숫자처럼 보여도 텍스트로 저장된 값이면 조건이 성립하지 않습니다.
Q. IF를 여러 번 겹치는 것과 IFS 중 뭐가 더 안전한가요?
A. 조건이 적으면 큰 차이가 없지만 조건이 늘어날수록 IFS가 실수를 줄여줍니다. 괄호 개수를 맞출 필요가 없기 때문입니다.
Q. 조건 순서를 바꾸면 결과도 바뀌나요?
A. 네, IFS는 앞에서부터 검사해 처음 맞는 조건에서 멈춥니다. 구간이 겹치는 경우 순서에 따라 결과가 달라집니다.
Q. 구버전 엑셀에서도 쓸 수 있게 바꾸는 방법이 있나요?
A. IFS를 IF 중첩으로 풀어 쓰면 구버전에서도 동일하게 동작합니다. 조건과 결과 순서만 그대로 옮기면 됩니다.