엑셀 IF 함수 사용법 및 실전예제 총정리:: 논리함수

입력한 조건의 참/거짓을 판단하여 값을 반환하는 IF 함수의 사용법 및 주의사항을 알아봅니다.

홈페이지 » 엑셀 IF 함수 사용법 및 실전예제 :: 논리함수

엑셀 IF 함수 사용법 및 예제 정리 :: 논리함수

함수 목차 바로가기
함수 구문
= IF ( 논리식, 참일 때의 값, 거짓일 때의 값 )
인수 알아보기
인수 설명
논리식 참 또는 거짓을 판단할 조건입니다. 논리식에는 사용자 편의에 따라 연산자와 와일드카드를 사용하여 다양한 형태로 작성가능합니다.
엑셀 연산자 상세설명 바로가기
엑셀 와일드카드 상세설명 바로가기
참일 때의 값 논리식이 '참'일경우 반환할 결과값입니다. 셀을 참조하거나 문자열, 또는 다른 수식을 반환할 수도 있습니다.
거짓일 때의 값
[선택인수]
논리식이 '거짓'일 경우 반환할 결과값입니다. 셀을 참조하거나 문자열, 또는 다른 수식을 반환할 수도 있습니다.
  • 기본값으로 'FALSE'가 반환됩니다.
호환성
운영체제 호환성
Windows 버전 모든 버전에서 사용 가능합니다.
Mac 버전 모든 버전에서 사용 가능합니다.

예제파일 다운로드

오빠두엑셀의 강의 예제파일은 여러분을 위해 자유롭게 제공하고 있습니다.

  • [엑셀함수] 엑셀 IF 함수 사용법
    예제파일

관련 기초함수

엑셀 IF 함수 사용법 알아보기

함수 설명

엑셀 IF 함수는 엑셀에서 가장 많이 사용되는 함수 중 하나로, 실무자라면 반드시 알아야 할 엑셀 10대 함수 중 하나입니다. 조건의 참/거짓을 판단하여 특정 결과값을 반환합니다.

  • 여러개의 조건을 비교해야 할 경우 '다중조건 IF 공식'을 이용하거나, 엑셀 2019 이후 버전 또는 오피스 365 버전을 사용중이라면 IFS 함수를 사용할 수 있습니다.
  • 여러개의 조건이 순번(1,2,3,4..)로 이루어진 경우 CHOOSE 함수를 사용하면 더욱 편리합니다.
1. 엑셀 IF 함수 기본 사용법 (조건의 참/거짓 비교하기)
=IF(조건, 결과(참), 결과(거짓))

IF 함수를 사용하면 조건의 참과 거짓을 비교하여, 결과에 따른 값을 아주 쉽게 반환할 수 있습니다. 아래 그림과 같이 직원별 판매 실적에서 '판매실적'이 40 이상일 경우는 '달성', 그렇지 않을경우 빈칸을 반환합니다.

예제파일에서 사용된 공식

=IF(D8>=40,"달성","")
엑셀 IF 함수 기초 사용법
IF 함수를 사용해 판매실적이 40 이상일 경우 '달성'을 출력합니다.
2. IF 함수 조건에 따라 다른 수식 적용하기
=IF(조건,수식(참), 수식(거짓))

IF함수의 결과값으로는 '문자열' 뿐만 아니라 '셀' 또는 '수식'을 참조할 수도 있습니다. 예를들어 판매실적이 40 이상일 경우, "=판매 실적*1,000" 에 해당하는 커미션을 제공하도록 아래와 같이 수식을 작성할 수 있습니다.

예제파일에서 사용된 공식

=IF(D8>=40,D8*1000,"없음")
IF함수 조건 수식 사용
판매실적이 '40이상'일 경우, 판매실적*1000의 수수료를 계산합니다.
3. IF 함수 여러개 조건 동시 비교하기 (AND 조건)
=IF(AND(조건1, 조건2), 결과(참), 결과(거짓))

만약 2개의 조건을 동시에 만족하는 조건을 비교해야 한다면, 논리식에 AND 함수를 응용하여 문제를 쉽게 해결 할 수 있습니다. 예를들어 아래와 같이 수식을 작성하면, 담당부서가 영업1팀 '이고 그리고' 판매실적이 40 이상일 경우에만 '달성' 이라는 문자열을 출력할 수 있습니다.

예제파일에서 사용된 공식

=IF(AND(B8="영업1팀",D8>=40),"달성","")
IF 함수 여러개 조건 동시 만족 AND 조건
담당부서와 판매실적 2개의 조건을 모두 만족할 경우 '달성'을 출력합니다.
4. IF 함수 여러개 조건 동시 비교하기 (OR조건)
=IF(OR(조건1, 조건2), 결과(참), 결과(거짓))

위와 같은 원리로, OR 함수를 사용하면 '여러개의 조건 중 하나만 만족할 때'의 결과를 출력하는 수식을 작성할 수 있습니다. 예를들어, 담당부서가 영업1팀 '이거나 또는' 담당부서가 영업2팀일 경우 "참석" 이라는 문자열을 출력할 수 있습니다.

예제파일에서 사용된 공식

=IF(OR(B8="영업1팀",B8="영업2팀"),"참석","")
IF함수 여러개 조건 OR
영업1팀 또는 영업2팀일 경우 '참석'을 출력합니다. (OR조건)
5. IF 함수 다중조건 공식
=IF(조건1, 결과1(참), IF(조건2, 결과2(참), 결과3(나머지)))

IF 함수를 사용하여 여러 조건을 비교한 뒤, 각 조건에 따라 다른 결과값을 반환해야 할경우 IF 함수 다중조건 공식을 이용합니다. 위 공식에서는 2개의 조건만 비교하였지만, 필요에따라 3개, 4개 이상의 조건을 비교할 수도 있습니다.

다중조건 공식을 이용하면, 아래 그림과 같이 '판매실적이 40 미만일 경우 = 미달', '판매실적이 40~60 사이일 경우 = 보통', '판매실적이 60 이상일 = 우수'를 반환하도록 수식을 작성할 수 있습니다.

예제파일에서 사용된 공식

=IF(D8<40,"미달",IF(D8<=60,"보통","우수"))
엑셀 IF 함수 다중조건
IF 함수 다중조건으로 각 조건에 따라 다른 결과값을 반환합니다.

그 외 참고사항

  • 논리식에 들어가는 조건으로 '범위'를 입력하여 IF 함수를 '배열수식'으로도 작성할 수 있습니다. IF 함수를 배열수식으로 사용하면, 범위의 셀들을 하나씩 돌아가며 각각의 조건을 비교합니다.
    '// A1:A5 범위에 {11,9,12,8,13} 이 입력되어 있을 경우
    ={ IF(A1:A5>=10,"참") }
    ={ IF(A1>=10,"참"), IF(A2>=10,"참"), IF(A3>=10,"참"), IF(A4>=10,"참"), IF(A5>=10,"참") }
    ={ "참", FALSE, "참", FALSE, "참" }
  • IF 함수의 조건으로 연산자 및 와일드카드를 적절히 사용하면 IF 함수를 더욱 효율적으로 사용할 수 있습니다.
  • 조건을 만족하는 값의 합계 또는 개수를 계산하려면 SUMIF 함수 또는 COUNTIF 함수를 사용합니다..

자주묻는 질문

Q1. IF 함수로 조건을 만족하는 값의 합계를 구하고 싶어요

SUMIF 함수를 사용하면 조건을 만족하는 값의 합계를 손쉽게 계산할 수 있습니다.

=SUMIF(조건범위, 조건, 합계범위)

또는 IF함수와 SUM함수를 배열수식으로 입력하면 더욱 다양한 조건별 합계를 계산할 수도 있습니다. (배열수식이므로 Ctrl + Shift + Enter 로 입력합니다.)

{ =SUM(IF(조건범위=조건,합계범위,0)) }
엑셀 IF 함수 조건별 합계 배열함수
IF 함수와 SUM 함수를 응용하면 더욱 다양한 방법으로 조건별 합계를 구할 수도 있습니다.
Q2. 범위안에서 조건을 만족하는 값의 최대값을 구하고 싶어요

엑셀 2016 이상 버전 또는 오피스 365를 사용중일 경우 MAXIFS 함수를 사용하여 조건을 만족하는 최대값을 쉽게 구할 수 있습니다.

=MAXIFS(최대값범위, 조건범위, 조건)

만약 엑셀 이전버전을 사용중일경우, IF 함수와 MAX 함수를 배열수식으로 응용하여 조건을 만족하는 최대값을 계산합니다. (배열수식이므로 Ctrl + Shift + Enter로 입력합니다.)

{ =MAX(IF(조건범위=조건,최대값범위,0)) }
엑셀 조건별 최대값 구하기 IF 함수
엑셀 2016 이전 버전 사용자의 경우 IF 함수를 배열수식으로 응용하여 조건별 최대값을 구합니다.

링크: MS 홈페이지 IF 함수 설명

4.9 15 투표
게시글평점
guest
28 댓글
Inline Feedbacks
모든 댓글 보기
안개미로
안개미로
2020년 4월 9일 8:50 오전
게시글평점 :
     

고맙습니다

박상하
박상하
2020년 4월 14일 10:23 오후
게시글평점 :
     

안녕하세요 질문이 있습니다. if 에서 조건문을 작성하려할떄 해당 셀에 들어있는 정보가 다른 열에 있는 들어있으면 참, 아니면 거짓으로 해서 적용을 해보려고 했는데요. 예를 들어 =if(해당셀=Sheet2!B:B,1,0) 이런식으로 작성해 봤는데 1이 떠야하는… 더보기 »

박상하
박상하
2020년 4월 16일 4:13 오전
답글 남기기  오빠두엑셀

감사합니다. 적용해봤더니 바로 되네요. 아직 배열이 된다는 이야기가 잘 이해가 안가는데 더 배워야 겠네요!

둥이아범
둥이아범
2020년 4월 26일 7:48 오전
게시글평점 :
     

안녕하세요.. 왕초보 질문이 있습니다. 혹시 조건을 만족하면 셀 배경 색깔을 바꿀수도 있나요?
예를 들어 if(A1>0,"A1의배경색 파랑","A1의 배경색 빨강") 이런것도 가능한가요?

엘린꼬마
2020년 4월 26일 4:55 오후
게시글평점 :
     

자료 감사합니다.

hanahh
hanahh
2020년 4월 28일 8:35 오후
게시글평점 :
     

if공식 활용해서 표를 만들었는데 총합을 구할려고 sum을 사용하려니까 값이 0으로만 나옵니다. 왜 이러는 거죠?

박태현
박태현
2020년 5월 6일 3:36 오후
게시글평점 :
     

안녕하십니까 궁금한게 있어서 이렇게 댓글을 남기게 되었습니다. If 함수를 써서 그 셀안에 제가 원하는 부분만 지울 수 있을까요? 예를 들면 , "D1/D2 -> D1" 에서 "->" 앞에 글을 지우고 싶습니다.… 더보기 »

뿌까뿌가
뿌까뿌가
2020년 7월 1일 11:37 오전
게시글평점 :
     

차근차근 해보겠습니다.아직 100프로 이해가 안되네요

프롭
프롭
2020년 8월 16일 7:03 오후
게시글평점 :
     

안녕하세요. 글자수가 150개이상이면 no 아니면 yes /// 콤마수가 40개 이상이면 no 아니면 yes를 하고 싶습니다. LEN 함수 | LEN - LEN(SUBSTITUTE로 각각 은 구현했는데..이걸 한 셀에 넣고 싶어서 if문을 쓰자니… 더보기 »

프롭
프롭
2020년 8월 18일 4:17 오후
답글 남기기  오빠두엑셀

안그래도 시트가 길어지고 있어서 ㅠ 어떻게든 줄여보고자 했습니다.;; 쉬운일인줄 알고 그렇게 해보고 있던건데 생각보다 쉽지 않더라구요. =IF(LEN(D1)-LEN(SUBSTITUTE(D1,",",""))>40,"No","Yes") & "/" & IF(LEN(D1)>150),"No","Yes") 조언 주신대로 이렇게 해봤는데 수식에 오류가 있어서 안되네요 ㅠ… 더보기 »

프롭
프롭
2020년 8월 19일 3:29 오후
답글 남기기  오빠두엑셀

어 알려주시는데로 해보니 되네요;; 두번째 수식에서 ) 문제가 있었나봐요. 저는 아무리 찾아봐도 눈에 안들어오던데 감사합니다 ㅠ 이번에 섹셀 많이 만지고 있는데 덕분에 많이 해결하고 있습니다!

구니
구니
2020년 9월 3일 11:56 오후
게시글평점 :
     

깔끔하고 쉬운 설명, 이글보고 가입합니다.

설기
설기
2020년 10월 7일 6:33 오후
게시글평점 :
     

설명 감사합니다! 하나씩 해보니 재미있네용

김현섭
김현섭
2020년 11월 27일 11:05 오전
게시글평점 :
     

안녕하세요.. 질문 있습니다. 간단할거 같은데 잘 안되는게 있어서요.. A1 값을 D1에 그대로 나오게 하는데요..만약 A1에 값이 없는 빈칸이면 B1을 D1에 표시하고, B1도 값이 없는 빈칸이면 C1을 D1에 표시해주고 싶은데요.. if함수를… 더보기 »

강가딘71
강가딘71
2020년 12월 13일 11:54 오후
게시글평점 :
     

IF 함수 하나만 잘 이해해도 많은 걸 해결할 수 있었습니다. 감사해용~~

김생민
김생민
2021년 5월 3일 10:50 오전
게시글평점 :
     

좋은 정보 감사합니다

황채원
황채원
2021년 7월 15일 9:21 오전
게시글평점 :
     

안녕하세요. 질문있습니다. 날짜 A194 ㅣ시간 D194:R194 ㅣ합계 S194 (주말은 시간 합계)*1.5 2021-7-4(일) ㅣ0.5 0.7ㅣ ?? 위와 같을 해당 셀이 만약 일요일인 경우, (참인 경우)시간합계*1.5, (거짓인 경우) 시간합 인 수식을 만들고자… 더보기 »

Kim Cuong Land
Kim Cuong Land
2021년 7월 22일 10:27 오전
게시글평점 :
     

안녕하세요.!. 좋은 강의 너무 감사합니다!. '// A1:A5 범위에 {11,9,12,8,13} 이 입력되어 있을 경우 ={ IF(A1:A5>=10,"참") } ={ IF(A1>=10,"참"), IF(A2>=10,"참"), IF(A3>=10,"참"), IF(A4>=10,"참"), IF(A5>=10,"참") } ={ "참", FALSE, "참", FALSE, "참" } 1. 제가 엑셀에 A1,B1,C1.D1 ~A5 -5, 1, 100, 500 을… 더보기 »

아내에게충성
아내에게충성
2021년 11월 9일 3:03 오후
게시글평점 :
     

반복학습이 핵심 인 것 같아요!! 매번 볼때마다 쉬운 설명 감사합니다

28
0
여러분의 생각을 댓글로 남겨주세요.x