Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

핵심 요약

  • IF 함수는 논리 테스트를 수행하는 함수로, 특정 조건이 참인지 거짓인지 판단합니다.
  • IF 함수의 구문은 =IF(논리_테스트, 참일_때_값, [거짓일_때_값]) 형태입니다.
  • 예시: =IF(A2>A3,"Bigger","Smaller")

이 글에서는 Excel 2019와 Microsoft 365를 포함한 모든 버전의 엑셀에서 IF 함수로 논리 테스트를 수행하는 방법을 다양한 예제와 함께 설명합니다.

IF 함수란?

엑셀의 IF 함수는 논리 테스트를 수행하는 데 사용됩니다. 이 함수를 활용한 수식은 IF문(IF statement) 또는 if/then 문이라고도 부릅니다.

IF 함수를 사용하는 모든 수식은 두 가지 결과 중 하나를 반환합니다. 작동 원리는 간단합니다. 수식이 특정 조건이 참인지 검사하도록 설정되어 있으며, 참이면 한 가지 동작을 수행하고, 거짓이면 다른 동작을 수행합니다.

엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

IF 함수는 엑셀에서 사용할 수 있는 여러 논리 함수 중 하나입니다. 그 외에도 AND, IFERROR, IFS, NOT, OR 등의 함수가 있습니다.

IF 함수 구문 및 인수

IF 함수를 사용하는 모든 수식은 다음과 같은 구성 요소로 이루어져 있습니다.

=IF(logical_test, value_if_true, [value_if_false])

  • logical_test: 검사하려는 조건입니다. 필수 인수입니다.
  • value_if_true: logical_test가 참일 때 실행할 내용입니다. 필수 인수입니다.
  • value_if_false: logical_test가 거짓일 때 실행할 내용입니다. 선택 사항입니다.

엑셀 IF문은 조금 다르게 읽으면 쉽게 이해할 수 있습니다. "첫 번째 조건이 참이면 이것을 하고, 거짓이면 대신 이것을 한다"는 식으로 말입니다.

다음 규칙들을 기억해 두세요.

  • logical_test가 거짓이고 value_if_false가 생략되면 엑셀은 FALSE를 반환합니다.
  • value_if_true 또는 value_if_false 자리에 텍스트를 반환하려면 TRUE와 FALSE라는 단어를 제외하고 반드시 따옴표로 묶어야 합니다.
  • IF 함수는 대소문자를 구분하지 않습니다.
  • Excel 2010 이상 버전에서는 하나의 수식 안에 최대 64개의 IF문을 중첩할 수 있습니다. 그 이전 버전은 7개로 제한됩니다.

IF 함수 활용 예제

다음은 엑셀에서 IF 수식을 활용할 수 있는 다양한 방법입니다.

조건이 참일 때 텍스트 출력하기

=IF(A2>A3,"Bigger","Smaller")
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

가장 기본적인 IF문 예제입니다. A2가 A3보다 큰지 검사하고, 참이면 Bigger를, 거짓이면 Smaller를 출력합니다.

조건이 참일 때 계산 수행하기

=IF(A2>A3,A2-A3)
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

이번에는 value_if_true 자리에 텍스트 대신 계산식이 들어갑니다. A2가 A3보다 크면 두 값의 차이가 결과로 표시됩니다. 조건이 거짓이면 value_if_false를 생략했기 때문에 엑셀은 FALSE를 반환합니다.

계산식으로 조건 검사하기

=IF(A2/A3=5,A2/A3,"")
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

logical_test 자리에 계산식을 넣는 방법도 있습니다. 여기서 IF 조건은 A2/A3=5입니다. 이 조건이 참이면 A2/A3 계산 결과를 출력하고, 5가 아니면 빈 값을 반환하기 위해 큰따옴표("")를 사용합니다.

특정 날짜가 오늘인지 검사하기

=IF(A2=TODAY(),"This is today","")
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

IF문 안에 다른 엑셀 함수를 조합할 수도 있습니다. 이 예제에서는 TODAY 함수를 사용해 A2가 오늘 날짜인지 확인합니다. 오늘이라면 This is today를 출력하고, 아니면 아무것도 표시하지 않습니다.

AND 함수와 함께 IF 수식 사용하기

=IF(E2<=TODAY(),"Now","Soon")
=IF(AND(F2="Now",D2>=(B2-C2)),"Yes","No")
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

조금 더 복잡한 예제입니다. 지불해야 할 항목이 연체되었는지 확인하고, 연체되었다면 그 금액을 예산 범위 내에서 지불할 수 있는지 판단하는 시나리오입니다. 두 조건이 모두 참이면 G열에서 지불 시점인지 확인할 수 있습니다.

IF(E2<=TODAY(),"Now","Soon")은 Urgency 열에 입력된 수식입니다. 마감일과 오늘 날짜를 비교해 항목이 연체되었거나 오늘 마감인지 알려줍니다. 마감일이 오늘이거나 이미 지난 경우 F열에 Now를, 그렇지 않으면 Soon을 표시합니다.

두 번째 IF문은 AND 함수가 사용되었지만 구조는 여전히 일반적인 IF문과 동일합니다. 굵게 표시된 부분이 AND 함수가 위치한 곳이며, 첫 번째 쉼표 앞에 있으므로 logical_test 역할을 합니다.

=IF(AND(F2="Now",D2>=(B2-C2)),"Yes","No")

좀 더 직관적으로 표현하면 다음과 같습니다.

=IF(이 AND 함수를 검사해서, 참이면 Yes를 출력하고, 거짓이면 No를 출력)

AND 함수 내부에는 두 개의 조건이 들어 있습니다.

  • F2="Now": F2 셀에 Now가 있는지 확인합니다.
  • D2>=(B2-C2): 먼저 B2-C2를 계산해 남은 지불액을 구한 다음, D2의 사용 가능한 예산으로 지불할 수 있는지 확인합니다.

즉, 지금 지불해야 하는 항목이면서 지불할 자금까지 있다면 Yes, 지불할 시점이라는 결과가 표시됩니다.

중첩 IF문 예제

중첩 IF문(Nested IF)은 하나의 수식 안에 두 개 이상의 IF문이 포함된 경우를 말합니다. 작성 방법은 거의 동일하지만, 첫 번째 IF문 끝에서 괄호를 닫는 대신 쉼표를 찍고 다음 IF문을 이어서 작성합니다.

하나의 수식에 두 개의 IF문 사용하기

=IF(B2="F","Class A",IF(B2="M","Class B"))
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

이 예제는 학생을 성별로 분류하는 수식입니다. 여학생(F)은 Class A, 남학생(M)은 Class B로 배정됩니다. 수식은 B2에서 F와 M을 확인한 후, 참인 조건에 따라 Class A 또는 Class B를 출력합니다.

팁: 중첩 IF 수식 끝에 필요한 괄호의 개수는 IF가 작성된 횟수와 같습니다. 위 예제에서 IF가 두 번 사용되었으므로 끝에 괄호 두 개가 필요합니다.

하나의 수식에 세 개의 IF문 사용하기

=IF(A2=TODAY(),"This is today",IF(A2<TODAY(),"Old date",IF(A2>TODAY(),"Future date")))
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

여러 IF문이 포함된 수식의 예제입니다. 앞서 살펴본 TODAY 예제와 유사하지만 논리 테스트가 하나 더 추가되었습니다.

  • 첫 번째 조건은 A2가 오늘 날짜인지 확인하고, 참이면 This is today를 반환합니다.
  • 두 번째 조건은 오늘이 A2보다 큰지, 즉 A2가 과거 날짜인지 검사하고, 참이면 Old date를 반환합니다.
  • 마지막 조건은 오늘 날짜가 A2보다 작은지, 즉 미래 날짜인지 검사하고, 참이면 Future date를 반환합니다.

조건이 거짓일 때 가격 표시하기

=IF(C2="Bill","",IF(C2="Food","",B2))
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지

마지막 중첩 IF 예제는 특정 카테고리에 속하지 않는 구매 항목의 총액을 빠르게 파악하는 상황입니다. 불필요한 지출을 모두 합산해야 하는데, 목록이 길다면 이 방법이 가장 효율적입니다. 항목 설명이 Bill(고지서) 또는 Food(식비)인 항목은 필수 지출로 분류했으므로, 나머지 항목에 대해서만 B2의 가격을 표시합니다.

작동 방식은 다음과 같습니다.

  • C2="Bill","": C2가 Bill이면 셀을 비워둡니다.
  • C2="Food","": C2가 Food이면 셀을 비워둡니다.
  • B2: 두 조건이 모두 거짓이면 B2의 값을 표시합니다.

이 수식의 결과물은 SUM 함수로 합계를 낼 수 있는 가격 목록입니다. 이를 통해 불필요한 항목에 얼마를 지출했는지 빠르게 분석할 수 있습니다.

중첩 IF문을 더 쉽게 작성하는 방법

수식이 길어질수록 관리하기 어려워지고 나중에 수정하기도 힘들어집니다. 중첩 IF문을 다루기 쉽게 만드는 한 가지 방법은 각 IF문 뒤에 줄 바꿈을 넣는 것입니다.

=
IF(A2=TODAY(),"This is today",
IF(A2<TODAY(),"Old date",
IF(A2>TODAY(),"Future date")))

엑셀에서 이렇게 작성하려면 수식 입력줄에서 편집해야 합니다.

  1. 엑셀 상단의 수식 입력줄을 선택합니다.
  2. 입력줄 아래쪽 가장자리에 마우스를 올려 커서가 양방향 화살표로 바뀌면 클릭한 상태로 아래로 드래그해 작업 공간을 넓힙니다.
  3. 등호(=) 뒤에 커서를 놓고 Alt+Enter(Windows) 또는 Ctrl+Option+Enter(Mac)를 누릅니다. 그러면 수식의 나머지 부분이 새 줄로 이동합니다.
  4. 각 IF문 앞에서 3단계를 반복해 모든 IF문이 각각 별도의 줄에 위치하도록 합니다.
엑셀 IF 함수 완벽 가이드: 기초 구문부터 중첩 IF문까지