논리 함수
쉽게 말하면
IF는 '만약 ~이면 이것, 아니면 저것'을 정하는 함수예요. =IF(점수>=80,"합격","불합격")처럼 조건, 참일 때 값, 거짓일 때 값 세 개를 넣어요. 조건 두 개를 모두 만족해야 하면 AND, 하나만 만족해도 되면 OR로 묶어요. 세 갈래 이상(A·B·C 등급)은 IF 안에 IF를 또 넣고, 오류 대신 다른 글자를 보여 주려면 IFERROR를 써요.
시험용 정의
IF(조건, 참일 때 값, 거짓일 때 값)은 조건이 TRUE면 둘째, FALSE면 셋째 인수를 돌려준다(셋째를 생략하면 FALSE). 글자를 돌려줄 때는 큰따옴표로 감싸고, 빈칸은 ""로 쓴다. 조건이 여럿이면 AND(조건1, 조건2, …)(모두 참일 때 TRUE), OR(…)(하나라도 참이면 TRUE), NOT(조건)(반대)를 IF의 조건 자리에 넣는다. 세 갈래 이상은 중첩 IF(IF 안에 IF, 최대 64번)나 IFS(조건1, 값1, 조건2, 값2, …)로 나누며, IFS는 참인 조건이 없으면 #N/A이므로 마지막에 TRUE를 둔다. IFERROR(수식, 오류일 때 값)은 수식이 오류(#DIV/0!, #N/A 등)면 대신 정한 값을 보여 준다.
비유로 이해하기
IF는 갈림길 표지판이다. '키 140cm 이상이면 롤러코스터, 아니면 회전목마.' AND는 '키도 되고 보호자도 있어야', OR는 '키가 되거나 보호자가 있으면'이다.
자세히
먼저 알아 둘 말
| 말 | 뜻 |
|---|---|
| 논리값 | TRUE(참) 또는 FALSE(거짓) |
| 조건식 | C2>=80처럼 결과가 논리값인 식 |
| 중첩 | 함수 안에 같은 함수를 또 넣는 것 |
| 빈 문자열 | "" (큰따옴표 두 개). 아무것도 안 보이게 할 때 |
이 시트로 연습해요
네 학생의 점수예요. 수식 입력줄에 IF 수식을 쳐서 결과를 확인해요. 글자 결과는 꼭 큰따옴표로 감싸요.
AND · OR · NOT 결과
| 수식 (C3=92, E3=95) | 결과 |
|---|---|
| =AND(C3>=90, E3>=90) | TRUE (둘 다 참) |
| =AND(C3>=95, E3>=90) | FALSE (하나가 거짓) |
| =OR(C3>=95, E3>=90) | TRUE (하나라도 참) |
| =NOT(C3>=90) | FALSE (반대) |
등급 나누기 세 가지 방법 (90 이상 A, 80 이상 B, 나머지 C)
- 중첩 IF:
=IF(C2>=90,"A",IF(C2>=80,"B","C"))→ 닫는 괄호 개수 = IF 개수 - IFS:
=IFS(C2>=90,"A",C2>=80,"B",TRUE,"C") - VLOOKUP 근사 일치: 기준표를 따로 만들어 찾기 (찾기 함수에서 배워요)
순서가 중요하다. =IF(C2>=80,"B",IF(C2>=90,"A","C"))처럼 작은 기준을 먼저 쓰면 95점도 B가 된다.
시험에 이렇게 나와요
- 중첩 IF → =IF(조건1, 값1, IF(조건2, 값2, 값3))
- IF 안에 OR·AND 조합 → OR(A, AND(B, C))처럼 조건 구조를 그대로 옮긴다
확인 문제
Q1. C2가 85일 때 =IF(C2>=90,"A",IF(C2>=80,"B","C"))의 결과는?
- FALSE
- A
- B
- C
정답 보기
3번 B
85 ≥ 90은 거짓 → 바깥 IF의 세 번째 자리, 즉 안쪽 IF로 간다. 85 ≥ 80은 참 → B. 중첩 IF는 위(큰 기준)에서부터 차례로 걸러 낸다.
Q2. A1=70, B1=90일 때 =IF(AND(A1>=80,B1>=80),"통과","재시험")의 결과는?
- 통과
- 재시험
- FALSE
- TRUE
정답 보기
2번 재시험
A1이 80 미만이라 AND는 FALSE.
Q3. A1=70, B1=90일 때 =IF(OR(A1>=80,B1>=80),"통과","재시험")의 결과는?
- 통과
- TRUE
- #VALUE!
- 재시험
정답 보기
1번 통과
B1이 80 이상이라 OR는 TRUE.
Q4. 수식 결과가 오류일 때 "확인 필요"를 보여 주는 함수는?
- IFERROR
- NOT
- ISBLANK
- IFS
정답 보기
1번 IFERROR
=IFERROR(수식,"확인 필요").
헷갈리기 쉬운 O·X
IF 함수에서 결과로 글자를 쓸 때는 큰따옴표로 감싸야 한다.
정답 보기
O 맞다. =IF(A1>=60,"합격","불합격")처럼 글자는 큰따옴표로 감싼다. 따옴표가 없으면 엑셀이 이름으로 읽어 #NAME? 오류가 난다.
OR 함수는 모든 조건이 참일 때만 TRUE를 돌려준다.
정답 보기
X 틀리다. 그건 AND다. OR는 조건 가운데 하나만 참이어도 TRUE를 돌려준다.
IF의 세 번째 인수를 생략하고 조건이 거짓이면 0이 나온다.
정답 보기
X 틀리다. 세 번째 인수를 아예 빼면 거짓일 때 FALSE가 나온다. 쉼표만 남기고 비우면(=IF(조건,값,)) 0이 나온다.