복잡한 엑셀 공식, 함수 하나로 해결! | LET 함수 15분 정리
엑셀 LET 함수 목차 바로가기
영상 강의
예제파일 다운로드
오빠두엑셀의 강의 예제파일은 여러분을 위해 자유롭게 제공하고 있습니다.
- [실무기초] 엑셀 LET 함수 기초-활용 15분 총정리예제파일[실무기초] 엑셀 LET 함수 기초-활용 15분 총정리E-Book
LET 함수 기초 사용법
엑셀 LET 함수는 2021 버전부터 새롭게 추가된 '코드형' 함수입니다. LET 함수는 코딩을 하듯이 사용할 이름(=변수)을 할당하고 수식에 사용할 수 있습니다. 따라서 LET 함수를 사용하면 복잡한 공식을 간소화하고, 실무에서 여러 단계에 걸쳐 계산하던 작업을 함수 하나로 해결할 수 있습니다.
= LET (이름1,값1,이름2,값2, ... , 계산식)
- 이름과 값은 반드시 쌍으로 올바르게 작성해야 합니다.
- 마지막 인수는 반드시 결과를 반환하는 계산식을 작성해야 합니다.
- 이름은 엑셀 이름관리자에서 유효하게 사용할 수 있는 이름이어야 합니다. 예를 들어, "A1"은 셀 주소로 할당된 이름이므로 LET 함수의 이름으로 사용할 수 없습니다.
- 성과급 공식 예제 : 예제파일을 실행한 후, LET 기초 시트로 이동합니다. 시트 오른쪽에 작성된 성과급 표에서 매출 합계가 $100,000 이상일 경우, 초과분의 10%를 계산하는 수식을 작성하겠습니다. N5셀을 선택한 후, 아래 수식을 입력합니다.
=IF(SUM(L5:L9)>100000,(SUM(L5:L9)-100000)*10%,0)
- 수식을 입력하면 성과급으로 541.5가 계산됩니다.
- 위와 같이 수식을 작성하면, SUM함수로 범위를 지정할 때 매번 범위를 선택해야 하는 번거로움이 있습니다. 또한 매출 합계 범위가 바뀔 경우, 공식의 범위를 여러번 선택해서 수정합니다. 그럴 때, LET 함수를 사용하면 편리합니다.
- LET 함수 기초 예제 : N5셀에 작성한 기존 공식을 지운 후, LET 함수를 작성합니다. 먼저 아래와 같이 LET 함수에서 사용할 이름으로 '합계' 범위를 할당합니다.
=LET(합계,SUM(L5:L9),
- 이제 할당한 이름을 참조해서 편리하게 수식을 작성할 수 있습니다. 아래와 같이 공식을 완성합니다.
=LET(합계,SUM(L5:L9),IF(합계>=100000,(합계-100000)*10%,0))
- 함수를 입력하면 이전과 동일한 결과 값인 541.5가 계산됩니다.
여러 단계 공식을 간소화, LET 함수 실전 예제
LET 함수는 실무에서 복잡한 공식을 간소화하는 것 뿐만 아니라, 여러 단계에 걸쳐 계산된 결과를 일괄 계산할 수 있습니다.
- 내림차순 집계 보고서 만들기 : 예제파일에서 LET 실전예제 시트로 이동합니다. 이번에는 각 지역별로 매출액이 높은 순서대로 집계된 피벗테이블 보고서를 함수만으로 만들어보겠습니다. 만약 M365 최신 버전의 엑셀을 사용 중이라면, 아래 그림과 같이 GROUPBY 함수를 사용하면 편리하게 집계 보고서를 만들 수 있습니다.
=SORT(GROUPBY(A2:A37,E2:E37,SUM,0,0),2,-1)
- 먼저 G2셀에는 UNIQUE 함수를 사용해서 지역 범위의 고유목록을 출력합니다.
=UNIQUE(A2:A37)
- H2셀에는 SUMIF 함수를 사용해서 각 지역의 매출 합계를 계산합니다. 엑셀 2021 이후 버전에서는 동적배열을 반환하는 시작셀 뒤에 해시(#) 기호를 추가해서 동적 범위를 편리하게 선택할 수 있습니다.
=SUMIF(A:A,G2#,E:E)오빠두Tip : 해시(#) 기호의 다양한 사용 예제는 아래 기초 영상 강의에서 꼼꼼히 정리했습니다!👇
- 이제 지역 목록을 매출 합계 기준으로 정렬합니다. J2셀에 아래 수식을 입력하면, 매출 합계 기준 내림차순으로 정렬된 지역 목록이 출력됩니다.
=SORTBY(G2#,H2#,-1)
- K2셀에는 아래 수식을 입력해서 내림차순으로 정렬된 합계 범위를 출력합니다.
=SORTBY(H2#,H2#,-1)
- 마지막으로 정렬된 지역과 합계 범위를 하나의 배열로 합쳐줍니다. J11셀을 선택한 후, 아래와 같이 HSTACK 함수를 사용하여 두 범위를 하나의 배열로 합쳐주면 매출액이 높은 순서대로 집계된 피벗보고서가 완성됩니다.
=HSTACK(J2#,K2#)
- LET 함수 공식 간소화 실습 : 이제 LET 함수를 활용해서, 지역별 매출 피벗 보고서를 만드는 과정을 작성해보겠습니다. 먼저 아래와 같이 LET 함수의 이름으로 "지역, 매출, 고유지역, 매출합계"를 만든 후, HSTACK 함수로 병합된 배열을 출력합니다.
=LET(지역,A2:A37,
매출,E2:E37,
고유지역,UNIQUE(지역),
매출합계,SUMIF(지역,고유지역,매출),
HSTACK(고유지역,매출합계))오빠두Tip : Alt + Enter로 줄바꿈으로 추가해서 수식의 가독성을 높일 수 있습니다. - 마지막으로 "정렬지역, 정렬매출" 합계 범위를 추가한 후, HSTACK 함수로 병합된 배열을 출력하면 매출액 기준 내림차순으로 정렬된 피벗테이블 보고서가 간단하게 완성됩니다.
=LET(지역,A2:A37,
매출,E2:E37,
고유지역,UNIQUE(지역),
매출합계,SUMIF(지역,고유지역,매출),
정렬지역,SORTBY(고유지역,매출합계,-1),
정렬합계,SORTBY(매출합계,매출합계,-1),
HSTACK(정렬지역,정렬합계))
LET + LAMBDA 함수로 커스텀 함수 만들기
LET 함수와 함께 LAMBDA 함수를 활용하면 업무 효율을 크게 높일 수 있습니다. LAMBDA 함수는 복잡하게 작성된 공식을 커스텀 함수로 등록하는 함수입니다. M365 버전에 새롭게 추가된 LAMBDA 함수를 사용하면, VBA 매크로나 JavaScript의 도움 없이, 함수 공식만으로 누구나 커스텀 함수를 쉽게 등록하고 사용할 수 있습니다.
= LAMBDA (변수1,변수2, ..., 계산식)
- LAMBDA 함수는 PC에 설치된 M365 버전에서만 제공됩니다. 엑셀 이전 버전과 웹 버전 엑셀에서는 사용할 수 없는 점을 주의합니다.
- LAMBDA 함수의 변수의 이름은 엑셀의 이름 범위와 동일한 규칙이 적용됩니다. 예를 들어 "A1"은 엑셀에서 이미 셀주소로 할당된 이름으로 사용할 수 없습니다.
- Lambda 함수 사용해보기 : 예제파일에서 [LET 활용] 시트로 이동한 후, Q2셀에 작성된 LAMBDA 함수 공식에서 앞에 작은따옴표(')를 제외한 공식을 복사합니다.
- [수식] 탭 - [이름관리자] 를 클릭하거나, 단축키 Ctrl + F3을 동시에 눌러 이름관리자를 실행한 후 [새로 만들기] 버튼을 클릭합니다.
- 새 이름 대화상자가 실행되면, 참조 대상에 복사한 공식을 붙여넣은 후 아래와 같이 이름과 설명을 작성합니다. 모두 작성한 후, [확인] 버튼을 클릭하면 함수 등록이 완료됩니다.
이름 : EASYFILTER
설명 : 여러 조건을 만족하는 데이터를 필터링합니다.
참조대상 : =LAMBDA(범위,단어,LET(범위,범위,단어,단어,FILTER(범위,ISNUMBER(SEARCH(단어,BYROW(범위,LAMBDA(A,CONCAT(A)))))))) - 이제 시트에서 비어있는 셀을 선택한 후, 아래와 같이 EASYFILTER 함수를 사용해서 데이터를 편리하게 필터링할 수 있습니다.
오빠두Tip : FILTER+BYROW 함수로 필터링 자동화 공식을 만드는 전체 과정은 아래 멤버십 강의 전체 영상을 확인하세요!
https://youtu.be/p60R_PsJaI8
로그인
지금 가입하고 댓글에 참여해보세요!
4 댓글