본문 바로가기
엑셀 기초 강좌

041. (엑셀 기초 함수) If 함수 사용법 - 논리함수의 대표선수, 조건에 따라 이렇게 저렇게..

by Excel.Jump 청출어람 2022. 12. 27.
반응형

 

 

 

If 함수



■ 목차


1. 함수 설명
2. If 함수의 구문 / 사용방법
3. If 함수 사용해 보기
** 핵심 요약



1. 함수 설명


- "If 함수"는 논리함수의 대표선수로 엑셀에서 가장 많이 사용하는 함수 중에 하나입니다.
- 조건에 따라 조건이 참(True)인 경우, 조건이 거짓(False)인 경우 각각 다른 값을 반환할 수 있습니다.

- 너무 많이들 사용을 하니깐 이제는 점점 더 전문화되어 "Iferror, sumif, countif 함수" 등 전문화된 if 함수들이 많이 나와있습니다.
- 모두 If 함수에 기반한 함수이기때문에 "If 함수"를 잘 사용하게 되면 나머지는 사용하시는데 크게 어려움이 없습니다.

- 또한 "And, Or 함수"를 함께 사용하여 다양한 조건으로 응용하거나 If 함수 중첩을 통해서 여러 개의 조건으로 사용하는 것이 가능합니다.



2. If 함수의 구문 / 사용방법


IF(logical_test, value_if_true, value_if_false)

- logical_test True 또는 False를 산출할 수 있는 값 또는 식입니다.
- value_if_true logical_test가 True인 경우에 반환되는 값입니다.
- value_if_false logical_test가 False일 경우 반환되는 값입니다.



- 첫 번째 인수 "logical_test"는 논리(logical) 평가(test)가 가능한 수식이 들어가야 합니다. 일반적으로 조건식이라고 얘기를 합니다.
- 그래서 이 "logical_test" 수식의 결과가 "참(True)" 혹은 "거짓(False)으로 판정이 가능해야 합니다.
- 아래는 논리적인 판정이 가능한 수식의 사례들입니다. "굵은 파란색" 부분이 logical_test로 입력이 가능한 형태입니다.

 

logical_test 입력 사례
* logical_test 입력 사례


- 아직 좀 어려운 개념이지만 엑셀은 "False = 0", "True = 1"로 내부적으로 취급합니다.
- 그래서 "=False * 1 = 0 ( 0 * 1 = 0 )"이 되고 "=True * 1 = 1 (1 * 1 = 1)" 이 되게 됩니다.
- 그리고 "숫자 0" 이외의 모든 숫자는 "True" 취급을 합니다.

- 일단 오늘은 간단하게 "True = 1", "False = 0" 이라는 개념이 있구나 정도로 이해하시면 될 듯합니다.
- 이 개념이 나중에 중, 고수 수준이 되면 배우시게 될 "배열 수식"의 기본이 되는 개념입니다. ^^

- 이 얘기를 해드리는 이유는 logical_test에 만약 "True, False"외에 숫자나 문자가 들어가게 되면 어떻게 되는지를 설명을 드리기 위한 것이고
- 숫자/문자가 logical_test의 결과값으로 들어가게 되면 "숫자 0  = False", "나머지 숫자 = True"로 취급되어 계산이 됩니다. 문자는 오류가 됩니다.
- 아직까지는 어려운 개념이기 때문에 그냥 참조만 하시면 됩니다.


- 두 번째 인수 "value_if_true"는 논리평가(logical_test) 결과가 만약(if) "참(true)"인 경우의 값(value)입니다.
- 여기에는 수식, 문자, 함수 모두 들어갈 수 있습니다. 심지어 다시 "If 함수"를 사용해서 "If 함수 중첩"하는 방식도 가능합니다.
- 다음은 "value_if_true" 인수의 다양한 입력 사례들입니다.

value_if_true 입력 사례
* value_if_true 입력 사례


- 세 번째 인수 "value_if_false"는 논리평가(logical_test) 결과가 만약(if) "거짓(false)"인 경우의 값(value)입니다.
- 세 번째 인수도 "logical_test"결과가 "False"인 경우에 해당하지만 기본적으로 "value_if_true"와 동일하게 수식, 문자, 함수, If함수 중첩 모두 가능합니다.

- 이렇게 프로그래밍에 많이 사용하는 "조건 분기식"과 같은 역할을 해주는 함수가 바로 "If 함수"입니다.

 

If 함수 개요
* If 함수 개요


1) 비교 연산자 잘 사용하기

- "If 함수"를 사용하다 보면 "평균이 합격 기준 점수보다 크다"처럼 "비교 연산자"를 많이 사용하게 되는데
- 이 비교 연산자에 대해서 한 번 정리를 하고 넘어가도록 하겠습니다.

- 특히 "이상/이하"랑 "초과/미만"의 정확한 차이를 알고 계시면 좋을 것 같습니다.
- 60점 이상이면 60이 포함된 범위이고 딱 60점인 경우 "합격"이지만 60점 초과는 딱 60점인 경우는 "불합격"이 됩니다.

- 그리고 "같다"는 기호는 등호( "=" )인데 "다르다"는 ( "<>" )로 사용을 할 수 있다는 것도 함께 알고 계시면 도움이 될 듯합니다.

- "이상/이하, 초과/미만"의 경우 엑셀의 비교 연산자를 보시면 더욱 명확하게 구분이 가능하니 참조해 보시기 바랍니다.
- 한글은 혼돈이 있어도 엑셀 연산자는 혼돈이 되기 힘듭니다. ^^

 

엑셀의 비교 연산자
* 엑셀의 비교 연산자


2) 여러 조건을 동시에 비교 : And, Or 함수

- If 함수로 여러 조건을 동시에 비교해야 하는 경우가 있습니다.
- 자격증 시험의 경우 과락이라고 과목 최소 점수가 40점 이상이고(=And) 평균이 60점 이상인 경우 합격인데
- 이 경우 And 함수를 사용하여 "And(최소점수 40점 이상, 평균점수 60점 이상)"처럼 표시하는 것이 가능합니다.

- "Or 함수"의 경우 한 조건만 만족하면 합격으로 "Or (국어 90 이상, 수학 90 이상)"처럼
- 국어, 수학 점수 중 하나만 90점 이상인 경우 "우수 특기생" 후보로 지정하는 사례와 같습니다.

- "And, Or 함수"는 굉장히 많이 사용을 하는 함수로 중첩 등을 하게 되면 조금 복잡해 보 일 수 있으나
- 사례와 같이 기본적인 개념은 크게 어려움이 없을 것입니다.

여러조건 비교 : And 함수
* 여러조건 비교 : And 함수

 

여러조건 비교 : Or 함수
* 여러조건 비교 : Or 함수


3) If 함수 중첩(여러 개) 사용하기

- 지금은 "Ifs 함수"라고 여러 조건에 대해 각각의 해당하는 값을 반환하는 마치 "If 함수"를 중첩해서 사용하는 효과를 주는 함수가 생겼지만
- MS 365 버전의 최신 엑셀에서만 사용이 가능합니다. 최신 버전이 아닌 경우는 If 함수를 중첩해서 사용하거나 And 함수 등을 같이 사용해야 합니다.

- 오늘은 "If 함수"를 어떻게 중첩을 해서 사용을 하는지 간단하게 보도록 하겠습니다.
- 중첩하는 방법은 간단합니다. If 함수를 2번 이상 사용을 하면 되는데

- 다만 시스템 기능상 최대 64번까지 중첩하여 사용하는 것이 가능하다고는 하지만
- 2 ~3회 이상 중첩은 추천하지 않습니다.
- 이게 수식이 너무 복잡해져서 만든 본인이 봐도 잘 모르고 다시 보면 더더욱 잘 알기 힘이 듭니다.
- 그리고 팁으로 수식이 길다면 "줄 바꿈"을 해주는 것도 쉽게 구분할 수 있도록 작성하는 방법입니다.

 

If 함수 중첩해서 사용하기 : 개념도
* If 함수 중첩해서 사용하기 : 개념도


- 이를 수식으로 표시를 하게 되면 아래와 같습니다.
- 조금 복잡해 보일 수 있는데 시간을 가지시고 찬찬히 뜯어보시기 바랍니다. ^^
- "중첩"이라고 If 함수 안에 If 함수가 존재하는 형태입니다.

 

If 함수 중첩하여 사용하기
* If 함수 중첩하여 사용하기


4) If 함수로 빈셀(값없음)을 확인하는 방법

- If 함수로 비어 있는 셀인지 여부를 확인을 할 수 있고 빈센인 경우 특정값을 넣는 것도 가능합니다.
- 빈셀 여부를 확인하는 함수로 "Isblank 함수"가 있지만 보통은 큰따옴표를 연속해서 2개를 입력하기도 합니다. ( A1="" )
- 이때 큰따옴표 사이에는 아무것도 없이 두 개를 바로 붙여서 입력을 해줘야 합니다.
- 보통 함수에서 텍스트를 입력할 때 큰따옴표 ( "합격" )를 사용을 하는데 이 경우는 아무것도 없다는 의미입니다.

- 동일하게 결과값을 빈셀 ( "" )로 반환하는 것도 가능합니다.

 

IF 함수 빈셀 확인
* IF 함수 빈셀 확인




3. If 함수 사용해 보기


- 학생별 평균 점수를 합격 기준점수를 기준으로 합격 여부를 표시해 보도록 하겠습니다.

 

합격 여부 판정하기 (If 함수)
* 합격 여부 판정하기 (If 함수)


1) 평균 점수 구하기

- 평균 점수는 "Average 함수"를 사용해서 구해 줍니다.
- 그리고 소수점 자릿수를 첫째 자리로 만들기 위해 (숫자를 보기 좋게 변형)
- "홈" 탭 > "표시 형식" 그룹 > "쉼표 스타일" + "자릿수 늘림" 2가지를 순서대로 마우스로 클릭하여 적용합니다.

 

평균값 구하기 (Average 함수)
* 평균값 구하기 (Average 함수)


2) If 함수로 합격 여부 판정하기

- 먼저 등호( "=" ), 함수, 괄호 열기 까지, "=if (" 입력을 하게 되면 엑셀이 친절하게 필요한 인수에 대해서 표시를 해줍니다.

 

If 함수 입력
* If 함수 입력


- 첫 번째 인수 "logical_test"의 경우 "평균"이 "합격 기준" 이상 ( "평균 >= 합격기준")인지를 비교하고
- "True"인 경우 두 번째 인수 "value_if_true"의 값이 "합격"이 되고
- "False"인 겨우 세 번째 인수 "value_if_false"의 값은 "불합격"이 되도록 입력을 해줍니다.

- 여기서 주의하실 점이 2가지 있는데
- 첫 번째는 함수에서 텍스트를 입력하실 때는 반드시 "큰따옴표( "합격", "불합격" )"를 사용해 주셔야 하고
- 두 번째는 저희는 "박재민", "안동현" 학생의 평균/합격여부에 대한 수식을 "자동 채우기"로 복사/붙여 넣기를 할 예정이 때문에
- 합격 기준인 "C2"셀 주소를 "F4키"를 눌러 "절대 참조" 형식으로 ($C$2) 변경하여 입력을 해줘야 합니다.
- 절대 참조 형식으로 입력을 해줘야 수식을 복사하여도 셀 주소가 밀리지 않고 정확하게 참조가 가능합니다.

 

If 함수로 합격여부 판정
* If 함수로 합격여부 판정


- 여기서 실제로 "logical_test"로 입력한 부분만 선택하고 복사해서 수식으로 다른 셀에 다시 입력을 해보시면
- 수식 결과가 "True", "False"로 나옴을 알 수 있습니다.

If 함수 logical_test 결과 확인
* If 함수 logical_test 결과 확인


3) 자동 채우기로 수식 복사/붙여 넣기

- "F5", "G5" 두 셀 모두를 마우스로 선택한 후에 아래와 같이 "자동 채우기"를 해줍니다.

자동 채우기로 수식 복사
* 자동 채우기로 수식 복사

 

자동 채우기 완성된 모습
* 자동 채우기 완성된 모습




** 핵심 요약 : If 함수 사용법 - 논리함수의 대표선수, 조건에 따라 이렇게 저렇게..


1. 함수 설명

- "If 함수"는 논리함수의 대표선수로 참(True), 거짓(Fasle)의 논리판정에 따라 각각 다른 값을 반환할 수 있다.
- And, Or 함수나 If 함수의 중첩 등으로 다양하게 응용하여 사용이 가능하다.


2. If 함수의 구문 / 사용방법

- IF(logical_test, value_if_true, value_if_false)
- logical_test TRUE 또는 FALSE를 산출할 수 있는 값 또는 식입니다.
- value_if_true logical_test가 TRUE인 경우에 반환되는 값입니다.
- value_if_false logical_test가 FALSE일 경우 반환되는 값입니다.

- 첫 번째 인수 "logical_test"는 논리(logical) 평가(test)가 가능한 수식이 들어가야 한다. 조건식이라고 한다.
- 두 번째 인수 "value_if_true"는 논리평가(logical_test) 결과가 만약(if) "참(true)"인 경우의 값(value)이다.
- 여기에는 수식, 문자, 함수, 심지어 If 함수를 중첩하여 입력하는 것도 가능하다.
- 세 번째 인수 "value_if_false"는 논리평가(logical_test) 결과가 만약(if) "거짓(false)"인 경우의 값(value)이다.

- 비교 연산자 ( >, >=, <, <=, = , <> )를 잘 구분하여 사용하자.
- 여러 조건을 동시에 비교해야 하는 경우 "And, Or 함수"를 사용해 보자
- If 함수를 중첩해서 사용할 수 도 있지만 2 ~ 3개까지만 사용하자.
- 빈셀여부를 확인하기 위한 빈셀의 의미로 공백 없이 큰따옴표를 사용한다 ( =A1 = "" )


3. If 함수 사용해 보기

- 국어/수학/영어의 "평균" 점수가 "합격 기준"을 만족하는지를 확인하고 "합격/불합격"을 표시해 보자
- 첫 번째 인수 logical_test는 "= 평균 >= 합격기준"을 입력하고 만족하는지를 판정( True, False?)한다.
- 이때 "합격 기준"은 "복사/붙여 넣기"에도 동일한 셀 주소를 참조해야 하므로 "절대 참조"(F4키)로 입력한다.
- 두 번째 인수 "value_if_true"는 "합격"이 되고, 세 번째 인수 "vaue-if_false"는 "불합격"이 된다.
- 이때 함수에서 텍스트를 입력하는 경우 "큰따옴표 ( "" )를 사용하여 입력한다.

 

041. (엑셀 기초 함수) If 함수-연습문제
0.02MB

 

 

[엑셀 기초 강좌] - 999. 엑셀 기초 함수 목차 (완료)

 

999. 엑셀 기초 함수 목차 (완료)

[엑셀 기초 강좌] - 029. (엑셀 기초 함수) Sum함수 : 숫자의 합계를 구해보자 [엑셀 기초 강좌] - 030. (엑셀 기초 함수) Max, Min 함수 - 최대값, 최소값을 구해보자 [엑셀 기초 강좌] - 031. (엑셀 기초 함

nextmeok.tistory.com

 





* 엑셀 관련 궁금하신 거나 어려운 점이 있으시면 자유롭게 질문을 해주세요.
* 가능한 도움을 드릴 수 있도록 하겠습니다.
* 저도 많이 알지는 못하지만 누구나 그렇듯 시작이란 게 있고 경험이란 게 다를 것 같습니다.
* 편하게 문의하시면 됩니다. 저도 모를 수 있다. 감안해 주시고.

- ILU, SH -

반응형

댓글