엑셀 LAMBDA 함수는 엑셀의 기본 함수를 조합하여 통합문서에서 재사용 가능한 커스텀 함수를 생성하는 함수입니다.
=LAMBDA(인수1, [인수2], ..., 수식)
인수는 최대 253개까지 사용할 수 있습니다.
LAMBDA 함수의 마지막 인수는 항상 수식으로 사용됩니다.
엑셀 LAMBDA 함수는 VBA나 매크로 없이, 엑셀의 기본 함수를 조합하여 통합문서에서 사용 가능한 커스텀 함수를 정의하는 함수입니다. LAMBDA 함수를 사용하면 엑셀에서 반복적으로 사용하는 수식을 하나의 함수로 통합해서 사용할 수 있습니다. 이를 통해 수식에서 발생하는 오류를 줄이고 유지 관리를 쉽게 할 수 있습니다.
LAMBDA 함수를 사용하면 엑셀의 기본 함수만으로 사용자 함수를 등록할 수 있어, VBA나 매크로, Office Scripts와 같은 프로그래밍 지식이 없는 일반 사용자도 편리하게 사용할 수 있는 장점이 있습니다.
LAMBDA 함수는 일반 수식으로 입력 시 #CALC! 오류를 반환합니다. 함수의 실행 결과를 출력하려면, 함수 뒤에 괄호를 추가하고 그 안에 인수를 작성합니다.
=LAMBDA(인수1, 인수2, ... , 수식) (인수1, 인수2) / / LAMBDA 함수의 테스트 결과를 반환합니다.
ISOMITTED 함수를 사용하여 특정 인수의 누락여부를 확인할 수 있으며, 이를 통해 LAMBDA 함수의 특정 인수를 선택 인수로 사용할 수 있습니다.
=LAMBDA(인수1, [인수2], 인수1 + IF(ISOMITTED(인수2),0,인수2))(1) / / "인수2"를 기본값이 0인 선택 인수로 사용합니다.
=LAMBDA(값1,값2,값1+값2)(2,3) / / 두 숫자의 덧셈을 계산합니다. 결과값으로 5를 반환합니다.
셀 표시형식 중 "[DBNUM4]"를 사용하면, 숫자를 한글로 변환할 수 있습니다. (예: 11000 → "일만일천")
이 서식을 활용하여 숫자를 한글로 변환하는 LAMBDA 사용자 함수를 생성합니다.
=LAMBDA(숫자,TEXT(숫자,"[DBNUM4]"))(234500) / / 숫자의 한글로 변환합니다. 결과값으로 "이십삼만사천오백"을 반환합니다.
셀 표시형식을 사용해 숫자를 한글로 변환하는 방법은 아래 1분 쇼츠 영상을 확인하세요!👇
M365에 새롭게 추가된 TEXTAFTER 함수는 문자열에서 구분자 뒤의 텍스트를 반환합니다.
=TEXTAFTER(문자열,구분자,[시작위치],[일치옵션])
반면, TEXTBEFORE 함수를 사용하면 문자열에서 구분자 앞의 텍스트를 반환할 수 있습니다.
=TEXTBEFORE(문자열,구분자,[시작위치],[일치옵션])
위 두 함수를 활용하여, 문자열에서 시작위치와 종료위치 사이의 단어를 추출하는 사용자 정의 함수를 생성합니다.
=LAMBDA(문자열,시작위치,종료위치,TRIM(TEXTBEFORE(TEXTAFTER(문자열,시작위치),종료위치)))("참가자 : 김하늘 (37)",":","(") / / 문자열에서 시작위치와 종료위치 사이의 단어를 추출합니다. 결과값으로 "김하늘"을 반환합니다.
LAMBDA 함수는 일반적인 방법으로 함수를 실행할 시 #CALC! 오류를 반환합니다. 완성된 LAMBDA 함수의 동작을 테스트하려면, 함수 뒤에 괄호를 추가한 후 그 안에 인수를 작성합니다.
- 통합문서의 비어있는 셀 안에 다음과 같이 LAMBDA 함수를 작성합니다.
=LAMBDA(x,y,x+y)
- 함수를 일반적인 방법으로 입력하면 다음과 같이 #CALC! 오류가 반환됩니다.
LAMBDA 함수를 직접 입력하면 CALC 오류를 반환합니다. - 함수 뒤에 괄호를 추가한 후, 그 안에 인수를 작성하여 수식이 의도한대로 잘 동작하는지 테스트합니다.
=LAMBDA(x,y,x+y)(1,2)/ / 결과값으로 3을 반환합니다.
함수 뒤 괄호 안에 인수를 작성하여 LAMBDA 함수를 테스트합니다.
완성된 LAMBDA 함수는 [이름 관리자]를 통해 사용자 함수로 등록할 수 있습니다.
- 완성된 LAMBDA 함수를 복사합니다. 만약 LAMBDA 함수 뒤에 테스트 인수가 있을 경우, 테스트 인수는 지운 후 LAMBDA 함수만 복사합니다.
완성된 LAMBDA 함수를 복사합니다. - [수식] 탭 - [이름관리자]를 클릭하거나, Ctrl + F3 을 동시에 눌러 이름관리자를 실행합합니다.
이름관리자를 실행합니다. - [새로 만들기] 버튼을 클릭하여 [새 이름] 대화상자를 실행한 후, 복사한 LAMBDA 함수를 참조대상에 붙여넣기 합니다.
LAMBDA 함수를 새 이름 참조대상에 붙여넣기 합니다. - 함수 이름과 설명을 적절히 작성한 후, [확인] 버튼을 클릭하여 함수를 등록합니다.
함수 이름과 설명을 작성합니다. - 통합문서에서 비어있는 셀을 클릭한 후, 등호 뒤에 함수 이름을 작성하면 함수가 잘 등록된 것을 확인할 수 있습니다.
LAMBDA 사용자 정의 함수가 완성됩니다.
LAMBDA 함수의 인수는 엑셀의 이름 정의 규칙을 따릅니다. 엑셀 이름 정의 규칙에 대한 자세한 설명은 「진짜쓰는 실무엑셀」교재 33쪽을 참고하세요!
253개가 넘는 인수를 사용하면 #VALUE! 오류를 반환합니다.
잘못된 개수 또는 형식의 인수를 사용하면 #VALUE! 오류를 반환합니다.
LAMBDA 함수는 일반적인 방법으로 실행하면 #CALC! 오류를 반환합니다. 함수의 실행 결과를 테스트하려면, 함수 뒤에 괄호를 추가하고 괄호 안에 인수를 작성하여 실행합니다.
LAMBDA 함수에서 너무 많은 재귀호출이 발생하거나, 엑셀에서 처리 가능한 수 이상의 큰 수를 반환할 경우 #NUM! 오류를 반환합니다.