

엑셀 IF 함수의 기본형은 =IF(조건, 참일 때 값, 거짓일 때 값)입니다. 예를 들어 C2의 점수가 80점 이상이면 합격, 아니면 재검으로 표시하려면 =IF(C2>=80,"합격","재검")을 입력합니다. 조건이 TRUE이면 두 번째 인수, FALSE이면 세 번째 인수가 반환됩니다.
IF는 점수 판정, 납기 상태, 재고 경고, 할인 적용처럼 한 행의 조건에 따라 결과를 둘로 나눌 때 적합합니다. 먼저 조건을 셀에서 따로 시험한 뒤 결과값을 붙이면 오류를 줄일 수 있습니다. 조건이 많아지면 무작정 IF를 겹치기보다 AND·OR, IFS, 조회함수 또는 기준표로 구조를 단순화합니다.
IF 함수 기본 구문
Microsoft가 안내하는 구문은 IF(logical_test, value_if_true, [value_if_false])입니다. 첫 번째 인수는 TRUE 또는 FALSE로 평가되는 논리검사, 두 번째는 참일 때 반환할 값, 세 번째는 거짓일 때 반환할 값입니다. Excel 환경의 목록 구분기호에 따라 쉼표 대신 세미콜론을 쓰는 경우도 있습니다.
숫자 결과는 따옴표 없이 =IF(B2>=100,10,0)처럼 씁니다. 문자 결과는 =IF(B2>=100,"달성","미달")처럼 큰따옴표로 감쌉니다. 결과를 빈칸처럼 보이게 하려면 ""를 반환할 수 있지만 이는 진짜 빈 셀이 아니라 길이 0인 문자열이라는 차이가 있습니다.
비교연산자 정확히 쓰기
같음은 =, 큼은 >, 크거나 같음은 >=, 작음은 <, 작거나 같음은 <=, 같지 않음은 <>입니다. 80점을 포함해야 하는데 >80을 쓰면 정확히 80인 행이 거짓으로 분류됩니다. 경계값 바로 아래·같음·바로 위의 세 값을 시험하는 습관이 안전합니다.
셀의 텍스트와 비교할 때는 =IF(A2="완료","마감","진행")처럼 비교문자도 따옴표로 감쌉니다. 기준을 E1 셀에 두었다면 =IF(B2>=$E$1,"통과","확인")처럼 절대참조를 사용해 아래로 복사해도 기준이 움직이지 않게 합니다.
점수와 상태 판정 예제
점수 합격 판정
D2에 점수가 있다면 =IF(D2>=80,"합격","재검")을 사용합니다. D2가 숫자로 저장됐는지 확인하십시오. 화면에는 85로 보여도 텍스트이면 비교가 예상과 달라질 수 있습니다. ISNUMBER로 확인하거나 원본 데이터를 숫자로 변환합니다.
기한 초과 판정
마감일이 B2, 완료일이 C2라면 =IF(C2<=B2,"정상","지연")처럼 비교할 수 있습니다. 완료일이 비어 있는 행까지 지연으로 표시되지 않게 하려면 빈 셀 검사를 먼저 넣습니다. 날짜는 화면 문자열이 아니라 Excel 날짜 일련번호여야 계산이 안정적입니다.
재고 경고
현재고 C2가 안전재고 D2보다 작거나 같을 때 경고하려면 =IF(C2<=D2,"발주 필요","정상")을 사용합니다. 안전재고가 모든 행에서 하나의 기준셀이라면 절대참조로 고정합니다. 수식 결과만 믿지 말고 음수재고와 누락재고를 별도 검사합니다.
AND와 함께 여러 조건 모두 검사
AND는 모든 조건이 TRUE일 때만 TRUE를 반환합니다. 점수 C2가 80 이상이고 출석률 D2가 90% 이상일 때 합격이라면 =IF(AND(C2>=80,D2>=90%),"합격","재검")을 사용합니다. 조건 순서는 결과에는 영향을 주지 않지만 사람이 이해하기 쉬운 업무 순서로 배열합니다.
매출이 기준 이상이면서 반품률이 기준 이하인 행처럼 방향이 다른 조건도 조합할 수 있습니다. 조건 하나씩 별도 셀에서 TRUE/FALSE를 확인한 뒤 AND로 묶으면 어느 조건에서 탈락했는지 찾기 쉽습니다. 조건이 많다면 보조열을 두어 검증 가능성을 높입니다.
OR와 함께 여러 조건 중 하나 검사
OR는 조건 중 하나라도 TRUE이면 TRUE입니다. VIP 등급이거나 구매액이 100만원 이상일 때 혜택을 주려면 =IF(OR(A2="VIP",B2>=1000000),"혜택","일반")처럼 작성합니다. 두 조건이 모두 거짓일 때만 일반이 반환됩니다.
AND와 OR를 함께 중첩할 때는 괄호 구조를 분명히 합니다. 예를 들어 재직 중이면서 관리자 또는 승인 담당자인 조건은 AND(재직조건,OR(관리자조건,승인담당조건)) 구조입니다. 수식 입력줄에서 괄호 색을 확인하고 각 논리함수를 독립적으로 시험합니다.
빈 셀과 빈 문자열 판정
=IF(A2="","미입력","입력")은 진짜 빈 셀뿐 아니라 수식이 빈 문자열을 반환한 경우도 빈 것처럼 판정하는 데 자주 쓰입니다. 반면 ISBLANK는 참조한 셀이 실제로 비어 있을 때만 TRUE이며, 수식이 들어 있고 결과만 빈 문자열이면 FALSE입니다.
업무 목적에 따라 둘 중 하나를 선택해야 합니다. 사용자가 화면에서 값이 안 보이는 모든 상태를 미입력으로 볼 때는 ="" 비교가 편합니다. 원본 입력 자체가 없다는 사실을 엄격히 구분할 때는 ISBLANK가 적합합니다. 공백 문자 하나가 들어간 셀은 둘 다 빈 셀로 보지 않으므로 TRIM과 LEN으로 확인합니다.
중첩 IF 작성 순서
등급처럼 결과가 셋 이상이면 IF를 중첩할 수 있습니다. 90 이상 A, 80 이상 B, 그 밖은 C라면 =IF(C2>=90,"A",IF(C2>=80,"B","C"))입니다. 높은 기준부터 검사해야 95점이 먼저 A로 분류됩니다. 낮은 기준부터 검사하면 상위 점수도 하위 등급에서 멈출 수 있습니다.
중첩이 깊어질수록 괄호와 경계값을 관리하기 어렵습니다. 조건과 결과가 표 형태라면 XLOOKUP 또는 근사일치 조회가 더 유지보수하기 쉬울 수 있습니다. 수식을 고칠 사람이 조건 순서를 바로 설명할 수 없다면 보조열이나 기준표로 분리하는 편이 안전합니다.
IFS 함수로 여러 구간 정리
IFS는 조건을 앞에서부터 검사해 첫 번째 TRUE 조건의 결과를 반환합니다. Microsoft 365와 Excel 2019 이후 환경에서 사용할 수 있으며 오래된 Excel 2016에서는 지원 여부를 확인해야 합니다. 등급 수식은 =IFS(C2>=90,"A",C2>=80,"B",TRUE,"C")처럼 표현할 수 있습니다.
마지막 TRUE는 앞 조건에 해당하지 않는 모든 값을 받는 기본값 역할을 합니다. 이를 빼고 어떤 조건도 TRUE가 아니면 #N/A가 날 수 있습니다. IFS는 읽기 쉬워도 최대 127개 조건을 넣는 방식은 권장되지 않습니다. 조건이 많으면 기준표와 조회함수를 고려합니다.
IFERROR와 IF의 차이
IF는 논리조건에 따라 결과를 나누고 IFERROR는 수식 계산에서 오류가 발생했을 때 대체값을 반환합니다. 둘은 목적이 다릅니다. 예를 들어 나눗셈 오류를 표시하려면 =IFERROR(B2/C2,"확인 필요")를 쓸 수 있지만 정상적인 조건 분기를 IFERROR로 대신하면 안 됩니다.
IFERROR는 #N/A, #VALUE!, #DIV/0! 등 여러 오류를 한꺼번에 숨길 수 있어 원인 진단이 늦어질 수 있습니다. 작성 단계에서는 원래 오류를 확인하고, 사용자에게 보여줄 최종 표에서만 의미 있는 대체문구를 적용합니다. 특정 오류만 다룰 때는 IFNA 등 목적에 맞는 함수를 검토합니다.
자주 발생하는 오류와 해결
#NAME? 오류
함수 이름 철자, 따옴표, 이름 정의를 확인합니다. 문자 결과를 따옴표 없이 쓰면 Excel이 이를 정의된 이름으로 해석해 #NAME?가 날 수 있습니다. 스마트 따옴표가 복사된 경우 일반 큰따옴표로 다시 입력합니다.
FALSE 또는 0이 예상 밖으로 표시됨
참·거짓 결과 인수를 생략하면 원하지 않는 FALSE나 0이 나타날 수 있습니다. 세 번째 인수를 명시하고 빈 결과가 필요하다면 의도적으로 ""를 사용합니다. 단, 빈 문자열이 후속 계산과 COUNTA에 미치는 영향을 확인합니다.
모든 행 결과가 같음
복사한 수식에서 행 참조가 고정됐거나 기준셀을 잘못 고정했을 가능성이 큽니다. 각 행 데이터는 상대참조, 공통 기준은 절대참조인지 확인합니다. 수식 표시 기능으로 열 전체의 참조 변화를 검토합니다.
경계값 분류 오류
>와 >=, <와 <=를 혼동했는지 확인합니다. 79, 80, 81처럼 경계 주변 테스트 데이터를 따로 만들고 기대결과와 대조합니다. 소수점이 화면에서 반올림돼 실제값과 다를 수도 있습니다.
검증 체크리스트
- 조건식을 별도 셀에서 TRUE/FALSE로 먼저 확인했습니다.
- 포함 경계에 맞게 >와 >=를 구분했습니다.
- 문자 결과와 문자 조건에 큰따옴표를 사용했습니다.
- 행 데이터와 공통 기준의 상대·절대참조를 구분했습니다.
- AND는 모두, OR는 하나 이상이라는 차이를 확인했습니다.
- 빈 셀과 빈 문자열의 의미를 정했습니다.
- 중첩 IF는 높은 기준부터 순서대로 검사했습니다.
- 조건이 많으면 IFS나 기준표·조회함수를 검토했습니다.
- 경계값 아래·같음·위 테스트를 실행했습니다.
자주 묻는 질문
Q1. IF 함수에서 문자는 왜 따옴표로 감싸나요?
따옴표가 없으면 Excel이 문자를 이름이나 함수로 해석할 수 있습니다. 합격 같은 텍스트 결과는 "합격"처럼 입력합니다.
Q2. 조건 두 개를 모두 만족해야 할 때는 어떻게 하나요?
IF 안에 AND를 넣습니다. =IF(AND(조건1,조건2),참결과,거짓결과) 구조입니다.
Q3. 둘 중 하나만 만족해도 될 때는요?
OR를 사용합니다. OR 안의 조건 중 하나라도 TRUE이면 IF의 참 결과가 반환됩니다.
Q4. IF를 여러 번 중첩해도 되나요?
가능하지만 읽고 수정하기 어려워집니다. 조건이 많다면 IFS, 보조열, 기준표와 조회함수 중 더 명확한 구조를 선택하세요.
Q5. 빈 셀인데 ISBLANK가 FALSE인 이유는 무엇인가요?
그 셀에 수식이 있고 결과가 빈 문자열일 수 있습니다. 실제 빈 셀과 화면상 빈 결과는 다르므로 ISBLANK와 ="" 비교의 차이를 확인하세요.
공식 출처
- Microsoft 지원 – IF 함수
- Microsoft 지원 – IF와 AND, OR, NOT 사용
- Microsoft 지원 – IFS 함수
- Microsoft 지원 – 중첩 IF 수식과 주의점
Microsoft 365와 공개된 Excel 지원문서를 기준으로 작성했습니다. 조직의 Excel 버전과 목록 구분기호, 데이터 형식에 따라 수식 표시가 다를 수 있으므로 실제 파일의 경계값으로 검증하세요.