목차
이 자습서에서는 Excel에서 AND 및 OR 논리를 사용하여 여러 IF 문을 만드는 방법을 보여줍니다. 또한 IF를 다른 Excel 함수와 함께 사용하는 방법을 배웁니다.
Excel IF 자습서의 첫 번째 부분에서는 텍스트에 대한 하나의 조건으로 간단한 IF 문을 구성하는 방법을 살펴보았습니다. 숫자, 날짜, 공백 및 공백이 아닌 것. 그러나 강력한 데이터 분석을 위해 한 번에 여러 조건을 평가해야 하는 경우가 종종 있습니다. 아래 수식 예제는 이를 수행하는 가장 효과적인 방법을 보여줍니다.
여러 조건으로 IF 함수를 사용하는 방법
본질적으로 두 가지 유형의 AND / OR 논리 에 기반한 여러 기준을 가진 IF 공식. 따라서 IF 수식의 논리적 테스트에서 다음 함수 중 하나를 사용해야 합니다.
- AND 함수 - 모든 조건 이 충족되면 TRUE를 반환합니다. 그렇지 않으면 FALSE.
- OR 함수 - 단일 조건 이 충족되면 TRUE를 반환합니다. 그렇지 않으면 FALSE.
요점을 더 잘 설명하기 위해 몇 가지 실제 수식 예를 살펴보겠습니다.
여러 조건(AND 논리)이 포함된 Excel IF 문
두 개 이상의 조건이 있는 Excel IF의 일반 공식은 다음과 같습니다.
IF(AND( condition1, condition2, …), value_if_true, value_if_false)인간으로 변환 조건 1이 참이고 조건 2가 참이면 반환 value_if_true ; 그렇지 않으면 value_if_false 를 반환합니다.
열 B와 C에 두 가지 테스트의 점수를 나열하는 테이블이 있다고 가정합니다. 최종 시험에 합격하려면 학생이 두 점수 모두 50보다 커야 합니다.
논리 테스트의 경우 다음 AND 문을 사용합니다. AND(B2>50, C2>50)
두 조건이 모두 참이면 수식에서 "통과"를 반환합니다. 조건이 거짓이면 - "실패".
=IF(AND(B2>50, B2>50), "Pass", "Fail")
쉽지 않나요? 아래 스크린샷은 Excel IF /AND 공식이 올바르게 작동함을 보여줍니다.
유사한 방식으로 Excel IF 함수를 여러 텍스트 조건 과 함께 사용할 수 있습니다.
For 예를 들어, B2와 C2가 모두 50보다 크면 "Good"을 출력하고, 그렇지 않으면 "Bad"를 출력하려면 공식은 다음과 같습니다.
=IF(AND(B2="pass", C2="pass"), "Good!", "Bad")
중요 참고 사항! AND 함수는 이미 테스트된 조건이 FALSE로 평가된 경우에도 모든 조건 을 확인합니다. 이러한 동작은 대부분의 프로그래밍 언어에서 이전 테스트 중 하나라도 FALSE를 반환하면 후속 조건이 테스트되지 않기 때문에 약간 이례적입니다.
실제로는 이 때문에 올바른 IF 문이 오류가 발생할 수 있습니다. 특성. 예를 들어 아래 수식은 #DIV/0! ("0으로 나누기" 오류) 셀 A2가 0:
=IF(AND(A20, (1/A2)>0.5),"Good", "Bad")
인 경우 이를 방지하려면 중첩된 IF 함수를 사용해야 합니다.
=IF(A20, IF((1/A2)>0.5, "Good", "Bad"), "Bad")
자세한 내용은 엑셀의 IF AND 공식을 참고하세요.
Excel IF function with multiple조건(OR 논리)
조건 이 충족되면 한 가지 작업을 수행하고 그렇지 않으면 다른 작업을 수행하려면 다음 IF 및 OR 함수 조합을 사용하십시오.
IF(OR( condition1 , condition2 , …), value_if_true, value_if_false)위에서 논의한 IF / AND 수식과의 차이점은 지정된 조건 중 하나라도 참이면 Excel이 TRUE를 반환한다는 것입니다.
따라서 이전 공식에서 AND 대신 OR을 사용하면:
=IF(OR(B2>50, B2>50), "Pass", "Fail")
두 시험 모두에서 50점 이상을 얻은 사람은 "합격"을 받게 됩니다. column D. 이러한 조건에서 우리 학생들은 최종 시험에 합격할 확률이 더 높아집니다. 텍스트 가 있는 여러 IF 문을 만들고 OR 논리가 있는 한 셀의 값을 테스트하는 경우(즉, 셀이 "이것" 또는 "저것"일 수 있음) 배열 상수를 사용하는 수식.
예를 들어 셀 B2가 "배송됨" 또는 "지급됨"인 경우 판매를 "종료됨"으로 표시하려면 수식은 다음과 같습니다.
=IF(OR(B2={"delivered", "paid"}), "Closed", "")
더 많은 수식 예제는 Excel IF OR 함수에서 찾을 수 있습니다.
여러 AND & OR 문
작업에 여러 조건의 여러 집합을 평가해야 하는 경우 AND & 한 번에 OR 기능을 수행합니다.
샘플 표에서 시험 결과를 확인하기 위한 다음 기준이 있다고 가정합니다.
- 조건 1:exam1>50 and exam2>50
- 조건 2: exam1>40 and exam2>60
조건 중 하나라도 충족되면 최종 시험에 합격한 것으로 간주합니다.
얼핏 보기에는 공식이 조금 까다로워 보이지만 사실 그렇지 않습니다! 위의 각 조건을 AND 문으로 표현하고 OR 함수에 중첩하면 됩니다(두 조건을 모두 충족할 필요는 없으므로 어느 쪽이든 충분합니다).
OR(AND(B2>50, C2>50), AND(B2>40, C2>60)
그런 다음 IF의 논리적 테스트를 위한 OR 함수를 사용하고 원하는 value_if_true 및 value_if_false 값을 제공합니다. 결과적으로 여러 AND / OR 조건이 있는 다음 IF 공식을 얻습니다.
=IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")
아래 스크린샷은 공식을 올바르게 수행했음을 나타냅니다.
Naturally , IF 수식에서 두 개의 AND/OR 함수만 사용하도록 제한되지 않습니다. 다음과 같은 경우 비즈니스 논리에 필요한 만큼 사용할 수 있습니다.
- Excel 2007 이상에서 인수가 255개 이하이고 IF 수식의 총 길이가 다음을 초과하지 않는 경우 8,192자.
- Excel 2003 이하에서는 인수가 30개 이하이며 IF 수식의 총 길이는 1,024자를 초과하지 않습니다.
내포된 IF 문은 여러 논리 테스트 확인
단일 수식 내에서 여러 논리 테스트를 평가하려는 경우 여러 함수를 서로 중첩할 수 있습니다. 이러한 함수를 중첩이라고 합니다.IF 기능 . 논리 테스트의 결과에 따라 다른 값을 반환하려는 경우 특히 유용합니다.
다음은 일반적인 예입니다. 다음 점수를 기준으로 " 만족 " 및 " 나쁨 ":
- 좋음: 60 이상(>=60)
- 만족: 40~60 사이(>40~<60)
- 나쁨: 40 이하(<=40)
수식을 작성하기 전에 순서를 고려하십시오. 중첩할 함수의 Excel은 수식에 나타나는 순서대로 논리 테스트를 평가합니다. 조건이 TRUE로 평가되면 후속 조건은 테스트되지 않습니다. 즉, 첫 번째 TRUE 결과 이후 공식이 중지됩니다.
이 경우 함수는 가장 큰 것부터 가장 작은 것까지 정렬됩니다.
=IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))
당연히 필요한 경우 더 많은 기능을 중첩할 수 있습니다(최신 버전에서는 최대 64개).
자세한 내용은 Excel에서 여러 개의 중첩된 IF 문을 사용하는 방법을 참조하세요.
여러 조건이 있는 Excel IF 배열 수식
테스트할 Excel IF를 가져오는 또 다른 방법 여러 조건은 배열 수식을 사용하는 것입니다.
AND 논리로 조건을 평가하려면 별표를 사용하십시오.
IF( condition1 ) * ( condition2 ) * …, value_if_true, value_if_false)OR 논리로 조건을 테스트하려면 더하기 기호를 사용하십시오.
IF( condition1 ) + ( condition2 ) + …,value_if_true, value_if_false)배열 수식을 올바르게 완성하려면 Ctrl + Shift + Enter 키를 함께 누르세요. Excel 365 및 Excel 2021에서는 동적 배열 지원으로 인해 일반 수식으로도 작동합니다.
예를 들어 B2와 C2가 모두 50보다 큰 경우 "통과"를 얻으려면 수식은 다음과 같습니다.
=IF((B2>50) * (C2>50), "Pass", "Fail")
내 Excel 365에서는 일반 수식이 잘 작동합니다(위의 스크린샷에서 볼 수 있음). Excel 2019 이하에서는 Ctrl + Shift + Enter 단축키를 사용하여 배열 수식으로 만들어야 합니다.
OR 논리로 여러 조건을 평가하려면 수식은 다음과 같습니다.
=IF((B2>50) + (C2>50), "Pass", "Fail")
IF를 다른 기능과 함께 사용하기
이 섹션에서는 IF를 다른 Excel 기능과 함께 사용하는 방법과 이점에 대해 설명합니다.
예제 1. #N인 경우 /A error in VLOOKUP
VLOOKUP 또는 기타 조회 기능이 항목을 찾을 수 없으면 #N/A 오류를 반환합니다. 테이블을 보기 좋게 만들기 위해 #N/A인 경우 0, 공백 또는 특정 텍스트를 반환할 수 있습니다. 이를 위해 다음 일반 공식을 사용합니다.
IF(ISNA(VLOOKUP(…)), value_if_na , VLOOKUP(…))예:
If #N/ 반환 0:
E1에서 조회 값을 찾을 수 없는 경우 수식은 0을 반환합니다.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))
#N/A가 공백을 반환하는 경우:
조회 값을 찾을 수 없는 경우 수식은 아무것도 반환하지 않습니다(빈 문자열).
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))
#N/A가 특정 텍스트를 반환하는 경우:
조회 값을 찾을 수 없습니다.수식은 특정 텍스트를 반환합니다.
=IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Not found", VLOOKUP(E1, A2:B10, 2, FALSE))
더 많은 수식 예를 보려면 Excel에서 IF 문을 사용한 VLOOKUP을 참조하세요.
예제 2. SUM, AVERAGE, MIN 및 MAX를 사용한 IF 기능
특정 기준에 따라 셀 값을 합산하기 위해 Excel은 SUMIF 및 SUMIFS 기능을 제공합니다.
경우에 따라 비즈니스 논리에서 IF의 논리 테스트에 SUM 기능을 포함해야 할 수 있습니다. 예를 들어 B2와 C2 값의 합계에 따라 다른 텍스트 레이블을 반환하려면 수식은 다음과 같습니다.
=IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))
합계가 130보다 크면 결과는 "양호"입니다. "; 110보다 크면 - "만족", 110 이하이면 - "나쁨".
유사한 방식으로 IF의 논리 테스트에 AVERAGE 함수를 포함하고 평균 점수를 기반으로 다른 레이블을 반환할 수 있습니다. :
=IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))
총 점수가 D 열에 있다고 가정하면 MAX 및 MIN 기능을 사용하여 최고 및 최저 값을 식별할 수 있습니다.
=IF(D2=MAX($D$2:$D$10), "Best result", "")
=IF(D2=MAX($D$2:$D$10), "Best result", "")
한 열에 두 레이블을 모두 포함하려면 위의 함수를 서로 중첩합니다.
=IF(D2=MAX($D$2:$D$10), "Best result", IF(D2=MIN($D$2:$D$10), "Worst result", ""))
마찬가지로 IF를 사용자 정의와 함께 사용할 수 있습니다. 예를 들어 GetCellColor 또는 GetCellFontColor와 결합하여 셀 색상에 따라 다른 결과를 반환할 수 있습니다.
또한 Excel은 조건에 따라 데이터를 계산하는 여러 함수를 제공합니다. 자세한 수식 예는 다음을 확인하십시오자습서:
- COUNTIF - 조건을 충족하는 셀 개수
- COUNTIFS - 여러 기준이 있는 셀 개수
- SUMIF - 조건부로 셀 합계
- SUMIFS - 여러 기준으로 셀 합계
예 3. IF with ISNUMBER, ISTEXT 및 ISBLANK
텍스트, 숫자 및 빈 셀을 식별하기 위해 Microsoft Excel은 ISTEXT, ISNUMBER와 같은 특수 기능을 제공합니다. 그리고 ISBLANK. 3개의 중첩된 IF 문의 논리 테스트에 배치하여 다른 모든 데이터 유형을 한 번에 식별할 수 있습니다.
=IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))
예제 4. IF 및 CONCATENATE
To IF 결과와 일부 텍스트를 하나의 셀에 출력하려면 CONCATENATE 또는 CONCAT(Excel 2016 - 365) 및 IF 함수를 함께 사용합니다. 예를 들면 다음과 같습니다.
=CONCATENATE("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))
=CONCAT("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))
아래 스크린샷을 보면 수식이 수행하는 작업에 대한 설명이 거의 필요하지 않습니다.
IF ISERROR / Excel의 ISNA 수식
최신 버전의 Excel에는 오류를 잡아 다른 계산 또는 미리 정의된 값인 IFERROR(Excel 2007 이상) 및 IFNA(Excel 2013 이상)로 대체하는 특수 기능이 있습니다. 이전 Excel 버전에서는 대신 IF ISERROR 및 IF ISNA 조합을 사용할 수 있습니다.
차이점은 IFERROR 및 ISERROR가 #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0! 및 #NULL!. IFNA 및 ISNA는 #N/A 오류에만 특화되어 있습니다.
예:"0으로 나누기" 오류(#DIV/0!)를 사용자 지정 텍스트로 바꾸려면 다음 공식을 사용할 수 있습니다.
=IF(ISERROR(A2/B2), "N/A", A2/B2)
엑셀의 IF함수. 읽어 주셔서 감사합니다. 다음 주에 저희 블로그에서 뵙기를 바랍니다!
다운로드용 실습 워크북
Excel IF 다중 기준 - 예제(.xlsx 파일)