사용법/엑셀(EXCEL)

내배내적 엑셀 - If 함수 중첩 사용하기

Hiems__ 2020. 10. 28. 10:05
728x90
반응형
SMALL

오늘은 엑셀의 IF함수에 대해 이야기해보겠습니다.

 

IF 함수에 대한 간단한 설명을 하고 심화(중첩)까지 이야기할게요~ :)

 

엑셀의 IF 함수는 Vlookup 만큼이나 자주 사용하는 함수인데요,

특히 중첩을 이용해서 참일 때의 값, 거짓일 때의 값을 쓸 수 있기 때문에

함수 설정만 잘해 놓으면 자동으로 IF 함수가 분류해주니까 정말 편하고 좋아요 :D

 

한번 배워먹으면 자주 쓰고 유용한 IF 함수!

오늘 꼭 제대로 배우셔서 잘 활용하시길 바래요~:)

 

IF예제.xlsx
0.01MB

 

IF 함수 인수 설명

■ Logical_test : 참이나 거짓으로 판정될 값이나 식을 넣는 곳입니다.
■ Value_if_true : Logical_test의 값이 참일 경우 돌려주는 값입니다. 생략하면 TRUE라고 나옵니다. IF 함수를 일곱 번 중첩해서 사용 가능합니다.
■ Value_if_false : Logical_test의 값이 거짓일 경우 돌려주는 값입니다. 생략하면 FALSE라고 나타납니다.

 

IF 함수 기본

IF 함수는 참, 거짓에 따라 값을 넣을 수 있기 때문에 우리가 원하는 값을 넣어서 분류하기에 편합니다.

 

예를 들어 아래와 같은 표를 살펴보겠습니다.

각각의 제품에 대해 청구한 금액이 있고 입금액이 나와 있습니다.

 

우리는 이제 입금했을 경우 입금여부(E열)에 O를 표시하고 입금하지 않은 경우 X를 표시하려고 합니다.

우리의 기준은 입금액이 있으면 O이기 때문에 D열의 값이 빈칸이 아니어야 합니다.

 

'빈칸이 아니다'라는 뜻은 엑셀에서 <>"" 로 표시됩니다.

 

따라서 참, 거짓을 판별하는 Logical_test에 들어갈 문구는 D2<>""(D2가 빈칸이 아니다) 가 됩니다.

 

D2열이 채워져 있으면(=빈칸이 아니면(참)) O를 반환하고,

비워져 있으면 X를 반환하려고 하기 때문에 사과에 대한 입금 여부의 함수 식은 다음과 같습니다.

 

■ 사과의 입금여부에 대한 함수식 =IF(D2>"","O","X")

 

이런 식으로 IF함수를 채울 수 있습니다.

 

 

또한 함수는 기준을 세우기 나름이기 때문에 비워져 있는 값을 기준으로도 IF 식을 세울 수 있습니다.

만약 D열이 비워져 있는 경우를 기준으로 IF 함수를 세운다면,

 

Logical_test에는 D2=""를 넣고, Value_if_true에 X, Value_if_false에 O를 넣어서

첫 번째 함수와 동일한 값을 얻을 수 있습니다.

 

■ 기준을 바꾼 사과의 입금여부에 대한 함수 식 =IF(D2="","X","O")

 

IF함수의 중첩 사용

이제는 IF 함수의 중첩 사용에 대해 배워보겠습니다.

 

IF의 중첩은 결국 어디에 IF 함수를 넣느냐의 문제입니다.

그것만 말면 쉽지만 초반에는 어디에 IF를 넣을지 헷갈리는 경우가 많습니다.

여기서는 초반에 헷갈리지 않고 보다 빠르게 IF문을 만드는 법을 배워보겠습니다.

 

 

IF 함수의 중첩을 쉽게 사용하는 방법은 바로 각 단계를 2개의 답변(Y/N)만 나올 수 있도록 식을 정리하는 것입니다.

왜냐하면 IF 함수가 돌려줄 수 있는 값은 2개뿐이기 때문이지요.

 

쉽게 설명해볼게요.

 

위의 경우를 살펴보면 입금여부에 대해서 총 4가지의 경우가 나오는 것을 알 수 있습니다.

 

①입금된 경우
  1-1. 청구액=입금액
  1-2. 청구액>입금액
  1-3. 청구액<입금액

②입금되지 않은 경우

 

먼저 (1) 첫 번째로는 입금된 경우/입금되지 않은 경우 이렇게 2가지로 나눌 수 있고,

 

(2) 청구에 대해서도 2개로 분류가 가능하도록 3개의 경우로 나눌 수 있습니다.

 

(i) 청구액=입금액 / 청구액≠입금액

(ii) 청구액>입금액 / 청구액=<입금액

(iii) 청구액<입금액 / 청구액>=입금액

 

저는 여기서 (i)가 쉬우니까 (i)로 분류해볼게요.

 

 

(3)그러면 청구액≠입금액 는 다시 아래와 같이 분류할 수 있습니다.

 

 - 청구액>입금액 / 청구액<입금액

 

 

이를 표로 나타내면 아래와 같습니다.

 

 

이제 각 단계를 IF 함수로 표현해봅시다.


(※ 입금, 미입금, 차액있음 등의 문자는 텍스트이기 때문에 양 쪽에 ""를 붙여줬습니다.)

 

① 입금액이 빈칸이 아니다 =IF(D2<>"","입금","미입금")

② 청구액과 입금액과의 금액이 같다 =IF(C2=D2,"-","차액있음")

③ 입금액이 더 크다 =IF(D2>C2,"환급","재청구")

 

이렇게 만들어진 각 함수를 순서대로 해당하는 부분에 넣어주면 됩니다.

 

 

②는 ①이 참일 경우에 나오는 값이므로 ①의  Value_if_true 자리에 넣어줍니다

A =IF(D2>"",IF(C2=D2,"-","차액있음"),"미입금") 

 

 

③은 ②가 거짓일 경우에 나오는 식이므로 바로 위의 식 A에서 ②의 Value_if_false 자리에 넣어줍니다.

 

■ 차액여부 최종 IF 식  =IF(D2>"",IF(C2=D2,"-",IF(D2>C2,"환급","재청구")),"미입금")

 

그러면 이 식이 바로 아래와 같이 차액 여부를 판별해주는 IF 식이 됩니다.

 

 

이제 IF함수의 중첩 사용에 대해 헷갈리지 않겠죠?

Y or N 답변! 가지치기! 이것만 기억하시면 중첩 활용이 쉬울 거예요.

 

다음 포스팅에서 만나요~! :)

 

2020/10/21 - 내배내적 엑셀 - Sumif 함수(feat.특정 값만 더해보자)

2020/10/20 - 내배내적 엑셀 - Countif 함수(feat. 조건에 맞는 갯수를 세는 함수)

2020/10/15 - 처음보면 헷갈리는 절대참조와 상대참조 이해하기

2020/10/14 - 내배내적 엑셀 - index-match 함수 다중조건(중첩조건)

2020/10/12 - 내배내적 엑셀 - index-match 함수 기본 응용하기

2020/10/12 - 내배내적 엑셀 - index 와 match 함수 이해하기

2020/10/09 - 내배내적 엑셀 - Vlookup 다중조건

 

 

 

 

728x90
반응형
LIST