ExcelIF조건문

엑셀 IF

조건을 평가해 참/거짓에 따라 다른 값을 반환하는 가장 기본적인 논리 함수

IF 수식 구조

=IF(조건, 참일 때 값, 거짓일 때 값)

조건 (logical_test)

TRUE/FALSE로 평가되는 식. 비교 연산자(>=, =, <> 등) 사용

참일 때 값 (value_if_true)

조건이 TRUE일 때 반환할 값. 텍스트는 큰따옴표("합격") 필수

거짓일 때 값 (value_if_false)

조건이 FALSE일 때 반환할 값. 생략 가능하지만 권장하지 않음 (FALSE 반환)

반환값은 텍스트, 숫자, 다른 수식, 빈 문자열("") 모두 가능. 또 다른 IF 함수를 넣어 중첩 IF로 여러 조건도 처리할 수 있습니다 (단, 3중첩 넘으면 IFS 추천).

직접 체험해보세요

점수·비교 연산자·기준값을 바꿔보면 조건 평가 흐름과 분기 결과가 즉시 반영됩니다

B2=IF(A2>=60, "합격", "불합격")"합격"
75
60
75>=60 ?
TRUE ✓

참일 때

"합격"

거짓일 때

"불합격"

최종 결과

"합격"

실전 활용 예제

=IF(A2>=60, "합격", "불합격")

합격/불합격 판정 — 가장 기본적인 IF 활용. 점수 셀이 60 이상이면 합격, 아니면 불합격.

예시: A2=75"합격"
=IF(A2>=90, "A", IF(A2>=80, "B", IF(A2>=70, "C", "F")))

등급 매기기 (중첩 IF) — 여러 구간을 위에서부터 차례로 검사. 90 이상은 A, 80 이상은 B... Excel 2019+에서는 IFS로 더 깔끔하게 가능.

예시: A2=85"B"
=IF(B2="", "데이터 없음", B2*1.1)

빈 셀 처리 — 셀이 비어 있는지 확인 후 다른 값 반환. ="" 비교는 빈 셀 체크에 자주 사용.

예시: B2=빈셀"데이터 없음"
더 알아보기

IF 함수 작성 시 가장 흔한 실수 4가지

1. 텍스트에 큰따옴표 빠뜨림

❌ =IF(A2>=60, 합격, 불합격)

✓ =IF(A2>=60, "합격", "불합격")

텍스트 반환값은 항상 큰따옴표로 감싸야 함

2. 비교 연산자 잘못 사용

❌ =IF(A2 = 60, ...) — 단일 = 의 의도

"다르다"는 <> (작다+크다 조합), "이상"은 >=. C/JS의 ==!=는 엑셀에 없음

3. 빈 셀 검사 시 IF(A2=0, ...)

빈 셀은 0과 다릅니다. 빈 셀 체크는 ="" 또는 ISBLANK(A2)를 쓰세요

4. 괄호 갯수 안 맞음

특히 중첩 IF에서 발생. 수식 입력 시 엑셀이 짝 맞는 괄호를 컬러로 표시해주니 참고. 정 안 되면 IFS 함수가 더 가독성 좋습니다

중첩 IF vs IFS — 언제 무엇을?

여러 조건을 차례로 검사할 때 IF를 중첩하면 가독성이 빠르게 떨어집니다. Excel 2019 / Microsoft 365에서는 IFS 함수로 깔끔하게 작성할 수 있습니다.

중첩 IF (전 버전 호환)

=IF(A2>=90,"A",IF(A2>=80,"B",IF(A2>=70,"C","F")))

괄호 추적이 어렵고 수정도 까다로움

IFS (Excel 2019+)

=IFS(A2>=90,"A", A2>=80,"B", A2>=70,"C", TRUE,"F")

조건/결과 쌍이 깔끔히 나열됨. 마지막 TRUE,"F"가 기본값

기준: 2단계까지는 IF 중첩도 OK. 3단계부터는 IFS 또는 VLOOKUP/XLOOKUP의 구간 매칭을 추천합니다.

IF + AND / OR — 복합 조건

여러 조건을 동시에 만족하거나 하나라도 만족하는 경우를 처리하려면 AND / OR을 IF의 조건 부분에 넣습니다.

AND — 모두 만족

=IF(AND(A2>=60, B2>=60), "합격", "불합격")

국어 60 이상 그리고 영어 60 이상일 때만 합격

OR — 하나라도 만족

=IF(OR(A2=99, B2=99), "특수", "일반")

A2가 99 이거나 B2가 99이면 특수 처리

AND/OR은 최대 255개 조건까지 받습니다. 가독성을 위해서는 3~4개 이내 권장.

자주 묻는 질문 (FAQ)

Q. IF 안에 IF를 몇 개까지 넣을 수 있나요?

Excel은 최대 64단계까지 중첩을 허용합니다. 하지만 3단계만 넘어가도 사람이 읽기 어렵습니다. IFS나 VLOOKUP 구간 매칭으로 바꾸세요.

Q. 조건이 TRUE일 때 아무것도 표시 안 하려면?

빈 문자열 ""을 반환하세요. =IF(A2>=60, "", "재시험") — 합격자에게는 아무것도 표시하지 않고 불합격자만 표시.

Q. IF 결과가 텍스트 "TRUE"/"FALSE"로 나오는 이유?

두 번째·세 번째 인수를 생략하면 IF는 TRUE/FALSE 논리값을 반환합니다. =IF(A2>=60) =A2>=60과 동일. 사용자 친화적 텍스트가 필요하면 두/세 번째 인수를 꼭 채우세요.

Q. IFERROR와 IF는 어떻게 다른가요?

IF는 조건 평가, IFERROR는 오류 처리입니다. IFERROR(수식, 대체값)은 수식이 오류일 때만 대체값을 반환합니다. 둘은 자주 함께 쓰입니다 (예: IFERROR(VLOOKUP(...), "없음")).