들어가기 전에
Excel에서 여러 조건을 동시에 처리해야 한다면 중첩 된 IF 문을 보통 사용하게 됩니다. 하지만 IF의 갯수가 많아지면 수식을 작성하기도 어렵고 나중에 수식을 살펴볼 때 이해하기도 쉽지 않습니다. IF 함수를 쌓는 것을 멈추고 IFS와 LET 함수를 사용하여 수식을 이해하기 쉽고 간단하게 하는 방법을 소개합니다.
이 글은 아래 기사 내용을 토대로 작성되었습니다만, 필자의 개인 의견이나 추가 자료들이 다수 포함되어 있습니다.
- 원문: If you’re still nesting IFs in Excel, you’re doing it the hard way
- URL: https://www.makeuseof.com/stop-nesting-ifs-in-excel-use-ifs-and-let/
중첩된 IF는 끔찍하지만 IFS는 나은 선택
두 가지 결과만 필요할 때는 IF 함수가 좋습니다. 하지만 조건을 쌓기 시작하는 순간(if this, then that, otherwise if this, then that)에는 마치 카드로 집을 짓는 것과 같습니다. 처음에는 잘 작동합니다. 하지만 실제 비즈니스 스프레드시트를 사용해 본 사람이라면 얼마나 빨리 모호해지는지 알 것입니다.
=IF(B2>100, "Excellent", IF(B2>80, "Good", IF(B2>60, "Average", IF(B2>40, "Poor", IF(B2>20, "Very Poor", IF(B2>=0, "Terrible"))))))
기술적으로 Microsoft는 최대 64개의 IF 중첩을 허용합니다. 하지만 그 한계에 이를 때까지 사용하는 경우는 거의 없습니다.
먼저, 6개월 후에 깊이 중첩된 IF 수식을 다시 살펴보고 의미를 파악해 보세요. 전체 체인을 실수로 끊지 않고 다른 조건을 추가할 적절한 위치를 찾는 데 행운을 빌어야 합니다. 괄호를 빼먹으면 다음 시간 동안 오류를 찾는 데 시간을 허비하게 될 것입니다.
Microsoft는 이러한 문제들을 해결하기 위해 IFS 함수를 도입했습니다 . Office 2019 및 Microsoft 365 구독에서 제공되는 IFS는 Excel에서 여러 개의 중첩된 IF 문을 대체할 수 있으며 가독성이 훨씬 뛰어납니다. IFS를 사용한 점수 계산 수식 예시는 다음과 같습니다.
=IFS(B2>100, "Excellent", B2>80, "Good", B2>60, "Average", B2>40, "Poor", B2>20, "Very Poor", B2>=0, "Terrible")
IFS 함수는 test1 , value-if-true , test2 , value-if-true 순으로 조건을 테스트합니다. 필요한 만큼(최대 127개까지) 테스트를 수행할 수 있습니다. 쉽게 말해, "점수가 100점이 넘으면 Excellent, 80점이 넘으면 Good, 60점이 넘으면 Average..."라고 말하는 것입니다.
IFS는 중첩된 IF보다 훨씬 발전했지만 완벽하지는 않습니다. 모든 조건문 내에서 복잡한 계산을 반복해야 하기 때문입니다. 바로 이 부분에서 LET가 등장하는데, IFS를 훌륭함에서 탁월함으로 바꿔줍니다.
참고 자료:
LET은 복잡한 논리를 작성하는 더 깔끔한 방법
LET를 사용하면 복잡한 계산에 이름을 지정하고 한 번만 실행한 후 수식 전체에서 해당 이름을 참조할 수 있습니다. 이를 통해 논리가 더욱 효율적이고 이해하기 훨씬 쉬워집니다. LET가 IFS 함수를 사용하여 점수 계산 수식을 더욱 간소화하는 방법은 다음과 같습니다.
=LET(score,B2,IFS(score>100,"Excellent",score>80, "Good", score>60, "Average", score>40, "Poor", score>20, "Very Poor", score>=0, "Terrible"))
점수가 무엇을 의미하는지 바로 알 수 있고, 셀 참조를 일일이 찾아 헤맬 필요가 없다는 점에서 차이가 너무나 명확합니다 . 비록 이 사례는 간단하지만, LET가 할 수 있는 일의 극히 일부에 불과합니다.
LET은 최대 126개의 변수를 지원하므로 아무리 복잡한 로직이라도 관리하기 쉬운 단위로 나눌 수 있습니다. 또한 성능도 향상됩니다. 일반적으로 같은 표현식을 여러 번 반복하면 Excel에서 매번 다시 계산합니다. LET을 사용하면 한 번 계산하고 이름을 지정하여 필요할 때마다 재사용할 수 있습니다.
LET와 IFS를 결합하는 것의 진정한 효과를 보여주는 좀 더 복잡한 예시를 들어보겠습니다. 판매 실적, 영업 지역, 그리고 재직 기간을 기준으로 수수료율을 계산한다고 가정해 보겠습니다.
=LET(sales,B2, territory, C2, tenure, D2, base_rate, 0.05, sales_bonus, IFS(sales>50000, 0.02, sales>25000, 0.01, sales>=0, 0), territory_bonus,IFS(territory="Premium", 0.015, territory = "Standard", 0.01, TRUE, 0.005), tenure_bonus,IFS(tenure>5, 0.01, tenure>2, 0.005, TRUE, 0), total_rate, base_rate+sales_bonus + territory_bonus+tenure_bonus, total_rate * sales)
이 수식은 기본 요율, 판매 보너스, 영업 지역 보너스, 재직 기간 보너스를 결합하여 직원의 총 수수료를 계산합니다.

LET 함수의 구문은 LET(name1, value1, name2, value2, …, calculation) 이며, 이 구조가 이 예시에 적용된 것을 확인할 수 있습니다. 각 변수(판매, 지역, 재직 기간, 기본 요율, 세 가지 보너스)는 최종 총 요율로 결합되기 전에 맨 위에 정의됩니다. 수식의 모든 부분은 반복되는 논리의 얽힘 속에 묻혀 있지 않고, 레이블이 지정되어 있어 따라하기 쉽습니다.
중첩된 IF를 사용하면 이런 공식을 작성하고 유지하기가 정말 힘들 것입니다. LET와 IFS를 사용하면 모든 구성 요소가 명확하게 정의되어 쉽게 조정할 수 있습니다. 프리미엄 지역 보너스를 변경해야 하는 경우 한 줄만 수정하면 됩니다. LET가 없다면 전체 공식을 샅샅이 뒤져 모든 인스턴스를 찾아 각각을 직접 수정해야 합니다.
결국, 몇 달 후에 다시 사용하더라도 유지하기 쉽고 망가질 가능성이 훨씬 적은 수식을 갖게 될 것입니다.
마치며
중첩된 IF는 Excel에서 항상 중요한 역할을 하지만, 그렇다고 해서 항상 최우선적으로 선택해야 하는 것은 아닙니다. IFS와 LET은 더 명확하고 빠르며 유지 관리가 훨씬 쉬운 수식을 작성할 수 있는 방법을 제공합니다. 괄호와 씨름하거나 몇 달 후에 자신의 논리를 해석하려고 애쓰는 대신, 거의 설명서처럼 보이는 수식을 사용하게 됩니다. 즉, 오류가 적고 협업이 용이하며 전반적으로 불편함이 줄어듭니다.
'Excel' 카테고리의 다른 글
| 피벗 테이블로 고생하기 전에 이 Excel 함수를 알았더라면 (0) | 2026.04.03 |
|---|---|
| Excel의 배열 상수에 대해 알아야 할 모든 것 (0) | 2026.04.02 |
| 모르고 있었지만 꼭 필요한, 최고의 시간 절약 MS Office 팁 6가지 (0) | 2026.03.27 |
| 엑셀의 #SPILL! 오류를 간단히 해결하는 5가지 방법 (0) | 2026.03.26 |
| 엑셀 사용자가 꼭 알아야 할 개념 — '범위'와 '배열'의 차이 (1) | 2026.03.17 |
