IF · AND · OR로 조건식 완성하기 (실무 예제 총정리)

엑셀 IF·AND·OR 함수로 조건식을 정확하게 만드는 방법을 단계별로 정리했습니다. 단일·다중 조건, 점수 등급·수수료 구간·배송비 계산 등 실무 예제와 함께, IFS·IFERROR·SWITCH 조합, 자주 하는 실수와 성능 팁까지 총정리. IF AND OR 함수 완벽 가이드
IF · AND · OR로 조건식 완성하기 (실무 예제 총정리)

Excel · Logic

IF · AND · OR로 조건식 완성하기 (실무 예제 총정리)

보고서의 80%는 조건식에서 갈립니다. IF/AND/OR 기본기부터 IFS·IFERROR·SWITCH 조합, 구간 계산·등급 산정·예외 처리까지 한 번에 끝내세요.

기본 문법 요약

함수형식설명
IF=IF(조건, 참값, 거짓값)조건이 TRUE면 참값, 아니면 거짓값 반환
AND=AND(조건1, 조건2, ...)모든 조건이 TRUE일 때만 TRUE
OR=OR(조건1, 조건2, ...)하나라도 TRUE면 TRUE
IFS=IFS(조건1, 결과1, 조건2, 결과2, ...)첫 번째로 TRUE인 조건의 결과 반환

단일 조건 – IF

예제 1) 합격/불합격

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

예제 2) 빈값 처리

=IF(B2="", "", B2*1.1)

입력 없을 때 계산을 건너뛰어 보고서가 깔끔해집니다.

다중 조건 – AND/OR

예제 3) 보너스 지급 (근속 ≥3년 AND 평가 A)

=IF(AND(C2>=3, D2="A"), "보너스 지급", "대상 아님")

예제 4) 무료배송 (등급 VIP OR 구매액 ≥ 50,000)

=IF(OR(E2="VIP", F2>=50000), "무료배송", "배송비 부과")
  • TIP 복잡한 중첩 IF보다 AND/OR로 조건을 먼저 묶기가 가독성·성능에 유리합니다.

가독성 강화 – IFS

예제 5) 점수 → 등급

=IFS(B2>=90,"A", B2>=80,"B", B2>=70,"C", B2>=60,"D", TRUE,"F")

TRUE,"F"기본값 역할. 마지막에 넣어 두면 모든 예외를 커버합니다.

예제 6) IF 중첩 vs IFS

방식수식
중첩 IF=IF(B2>=90,"A",IF(B2>=80,"B",IF(B2>=70,"C","D")))
IFS=IFS(B2>=90,"A",B2>=80,"B",B2>=70,"C",TRUE,"D")

구간별 계산(요금·수수료·등급)

예제 7) 매출 구간별 수수료율

매출(누계)요율
02%
10,000,0003%
30,000,0005%

LOOKUP으로 깔끔하게:

=LOOKUP(H2, {0,10000000,30000000}, {0.02,0.03,0.05}) * H2

예제 8) 배송비 (VIP 무료 또는 5만원 이상 무료)

=IF(OR(G2="VIP", H2>=50000), 0, 3000)

예제 9) 근무 교대 수당 (야간 AND 주말)

=IF(AND(I2="야간", WEEKDAY(J2,2)>=6), 15000, 0)

자주 쓰는 패턴 10가지

  1. 텍스트 포함 여부=IF(ISNUMBER(SEARCH("VIP",A2)),"특가","일반")
  2. 날짜 범위=IF(AND(A2>=DATE(2025,8,1), A2<=DATE(2025,8,31)),"8월","기타")
  3. 빈값/0 처리=IF(A2="","",A2), =IF(A2=0,"-",A2)
  4. 예외 안전장치=IFERROR(수식,"확인필요")
  5. 불리언 → 숫자--(조건) 또는 N(조건)
  6. SWITCH로 코드 매핑=SWITCH(K2,"A","우수","B","보통","C","미흡","기타")
  7. 다중 결과 반환(365)=IF(조건, 범위1, 범위2) (동적 배열)
  8. 조건부 서식 공식=AND($C2="지연",$D2>TODAY())
  9. 유효성 검사 메시지사용자 지정=AND(A2>=0, A2<=100)
  10. 복수 OR 간결화=ISNUMBER(MATCH(A2,{"Gold","VIP","Admin"},0))

오류·함정과 해결책

  • 텍스트 숫자 vs 숫자VALUE()로 변환, 셀 서식 확인
  • 날짜 비교 실패DATE() 사용, 지역 형식 불일치 주의
  • 공백 문자TRIM(), CLEAN()로 정리
  • 중첩 난독화 → IFS/LOOKUP/테이블로 리팩터링
  • 우선순위 실수AND가 OR보다 먼저 평가되도록 괄호로 의도 명확히

성능·유지보수 팁

  • 조건·임계값은 테이블(Table)로 외부화 → 수식은 참조만
  • 불필요한 전체열 참조(X:X) 지양, 정확 범위 지정
  • 여러 시트에 동일 로직이면 이름 정의로 재사용
  • 문서화: 시트 상단에 규칙 요약 텍스트 박스 두기

요약 정리

핵심 포인트체크리스트
IF/AND/OR 조합으로 모든 조건식 커버괄호·우선순위 명확히
가독성은 IFS/LOOKUP로 개선구간·등급은 테이블+LOOKUP
예외와 오류를 먼저 처리IFERROR/빈값 처리

FAQ

중첩 IF가 너무 길어요. 어떻게 줄이나요?

IFS/LOOKUP/CHOOSE로 치환하고, 임계값을 테이블에 두어 수식을 짧게 만드세요.

AND와 OR를 섞을 때 우선순위는?

AND가 OR보다 먼저 평가되는 경향이 있으므로 괄호로 의도를 명확히 하세요: IF(OR(AND(...), AND(...)), ...)

숫자와 텍스트 숫자가 섞여 비교가 틀려요.

VALUE()로 변환하거나 데이터 원천의 형식을 통일하세요.

지금 시트의 규칙을 문장으로 적고, 진리표를 만든 뒤 IFS/AND/OR로 옮겨 보세요. 읽기 쉬운 로직이 곧 유지보수 비용 절감입니다.

Leave a Reply

Your email address will not be published. Required fields are marked *