Excel & IT Info

아이엑셀러 닷컴, 엑셀러TV

Excel

인간처럼 수식을 작성하게 해 주는 Excel 팁

권현욱(엑셀러) 2025. 10. 23. 17:00
반응형

들어가기 전에

엄청난 (길이의) 엑셀 수식을 보고 있으면 답답하고 막막한 느낌이 들며, 더 나은 방법을 고민하게 됩니다. LAMBDA와 LET 함수를 사용하여 복잡한 수식을 정리하는 방법을 소개합니다.

권현욱(엑셀러) | 아이엑셀러 닷컴 대표 · Microsoft MVP · 엑셀 솔루션 프로바이더 · 작가

이미지: 아이엑셀러 닷컴


이 글은 아래 기사 내용을 토대로 작성되었습니다만, 필자의 개인 의견이나 추가 자료들이 다수 포함되어 있습니다.

  • 원문: This Excel Trick Lets Me Write Formulas Like a Huma
  • URL: https://www.makeuseof.com/write-excel-formulas-plain-language/

LET 함수: 복잡한 엑셀 수식 정리

스크롤 막대가 있어야 할 만큼 긴 수식을 만들어 본 적이 있나요? LET 함수로 해결할 수 있습니다. LET을 사용하면 수식의 각 부분에 이름을 지정할 수 있습니다. 값이나 계산식에 별명을 붙이는 것과 비슷합니다. 같은 하위 수식을 다섯 번 반복하는 대신, 한 번 정의하고 이름을 지정한 후 계산 전체에서 해당 이름을 재사용할 수 있습니다.

예를 들어, LET를 사용하여 학생의 점수를 평가해 보겠습니다. LET가 없으면 공식이 너무 복잡해질 것입니다.

=IFS(AVERAGE(B2:E2) > 85, "A등급", AVERAGE(B2:E2) >= 70, "B등급", AVERAGE(B2:E2)

 

이 수식은 세 개의 동일한 AVERAGE(B2:E2) 호출로, 매우 비효율적이고 읽기 어렵습니다. LET 함수를 사용하면 이 호출을 한 번만 정의할 수 있습니다.

=LET(student_average, AVERAGE(B2:E2), 
  IFS(student_average > 85, "Grade A", 
  student_average >= 70, "Grade B", 
  student_average < 70, "Grade C")
  )

 

수식의 길이는 조금 길어졌지만 수식이 더 깔끔하고 가독성이 뛰어나며 유지 관리도 더 쉬워졌습니다. student_average 로직을 업데이트하면 변경 사항이 전체에 적용됩니다.

 

이미지: muo

 

하나의 LET 함수에서 최대 126개의 변수를 정의할 수 있습니다. 복잡한 지표를 계산하거나, 논리가 가득한 단일 셀 대시보드를 구축하거나, 6개월 전에 작성한 수식을 실제로 이해하는 데 적합합니다.

 

LAMBDA: 나만의 Excel 함수 만들기

LAMBDA를 사용하면 거대하고 보기 흉한 공식을 관리하기 쉬운 것으로 바꿀 수 있습니다(아래 수식에서 GrowthRate).

=GrowthRate(B2, C2))

 

 한 번 정의하고 이름을 지정해 저장하면 워크북 전체에서 재사용할 수 있습니다. 논리를 조정해야 할 때는 Excel의 이름 관리자를 통해 한 곳에서 변경하면, 해당 변경 사항이 모든 곳에 적용됩니다.

 

사용자 정의 함수를 작성하는 방법

이 과정은 생각보다 간단합니다.

  1. 사용자 지정 함수를 사용할 통합 문서를 시작합니다.
  2. 실제 값을 플레이스홀더 이름(예: "가격" 및 "요금")으로 수정합니다.
  3. LAMBDA 함수가 어떤 셀에서든 제대로 작동하는지 테스트합니다.
  4. Ctrl + F3을 눌러 이름 관리자를 열고 새로 만들기 를 클릭한 다음 LAMBDA 문자열을 참조 대상 필드에 붙여넣습니다.
  5. 새로운 함수에 원하는 이름을 지정하고 나중에 도움이 될 수 있는 주석을 입력합니다.

 

이제 기본 제공 Excel 함수와 마찬가지로 아래 수식을 입력할 수 있습니다.

=YourFunctionName()

 

LAMBDA 함수는 특정 통합 문서에 저장되므로 다른 통합 문서에서는 자동으로 작동하지 않습니다. 여러 파일에서 재사용하려면 고급 수식 환경 추가 기능을 사용하여 함수를 가져오거나 내보내세요.

프리랜서 튜터라고 가정해 보겠습니다. 그리고 끊임없이 성적을 계산해야 한다면, 다음과 같은 수식을 사용해야 할 수도 있습니다.

=IFS(A1>=80,"Honors", A1>=50,"Pass", A1 < 50,"Fail")

 

이 코드를 매번 입력하는 대신, 점수 계산기 함수를 만들 수 있습니다.

=LAMBDA(score, IFS(score>=80,"Honors", score>=50,"Pass", score < 50,"Fail"))

 

이것을 이름 관리자에 "계산기"로 저장한 다음, 통합 문서의 아무 곳에나 아래 내용을 입력하기만 하면 됩니다.

=계산기(B2)

 

이미지: muo

 

처음에는 복잡해 보일 수 있지만, 일단 저장하고 나면 모든 LAMBDA 함수는 플러그 앤 플레이 방식으로 작동합니다. 또한 AI 챗봇 덕분에 필요한 수식과 쿼리 문자열을 쉽게 만들 수 있습니다.

 

LET과 LAMBDA: 인간 친화적인 수식

LET과 LAMBDA는 각각 훌륭합니다. 하지만 두 가지를 결합하면 강력한 조합이 됩니다.

LAMBDA 함수를 만들 때, LET을 문자열 내부에 사용해 논리의 각 부분을 이름으로 지정할 수 있습니다. 이는 복잡한 레시피를 최종 케이크를 굽기 전에 명확한 단계로 나누는 것과 비슷합니다. 각 재료에 이름을 부여해 각 단계가 의미 있게 되도록 하는 것입니다.

예를 들어, 헤론의 공식을 사용해 삼각형의 면적을 계산해야 한다고 가정해 보겠습니다. 이 계산은 유명하게도 복잡하고 번거로운 과정입니다.

=SQRT(((a+b+c)/2) * (((a+b+c)/2)-a) * (((a+b+c)/2)-b) * (((a+b+c)/2)-c))

 

6개월 후에 이와 관련된 것을 디버깅하는 건 정말 힘들 수 있습니다. 다행히도 LET와 LAMBDA를 사용하면 이를 정리할 수 있습니다.

=LAMBDA(a, b, c, LET(s, (a + b + c) / 2, SQRT(s * (s - a) * (s - b) * (s - c))))

 

이미지: muo

 

이 조합을 사용하면 단일 셀 안에 전체 보고서를 작성할 수도 있습니다. 판매 데이터를 가져와서 서식이 지정된 단일 셀 월별 요약을 생성하는 함수를 상상해 보세요.

=LAMBDA(
  p_col, s_col, 
  LET(_total, SUM(s_col), top, 
  INDEX(pcol, XMATCH(MAX(s_col), s_col)), 
  TEXTJOIN(CHAR(10), TRUE, "Report", 
  "Total: " & TEXT(_total, "$#,##0.00"), 
  "Top: " & _top))
)

 

이 함수를 MonthlyReport라는 이름으로 저장하고 아래 수식을 사용하여 호출하세요. 셀 하나에 함수 하나만 추가하면 완전한 보고서가 생성됩니다.

=MonthlyReport(B:B, C:C)

 

이미지: muo

 

마치며

LET과 LAMBDA를 사용하기 시작하면, 수식을 기계처럼 생각하는 것을 그만두고 사람처럼 생각하게 됩니다. LET은 각 단계를 이름으로 지정하여 공식에 구조를 부여하며, LAMBDA는 논리를 재사용 가능하고 인간 친화적인 함수로 변환합니다. 이 두 가지를 함께 사용하면 Excel 수식을 작성하고 읽으며 재사용하는 것이 더 쉬워집니다.