본문으로 건너뛰기
ArumSoft Learning
EN

    엑셀 고급 · 12개 중 3번째 튜토리얼

    엑셀 LET 함수로 수식을 깔끔하게 만드는 법

    LET으로 긴 수식의 각 부분에 이름을 붙여 한 번만 계산하고, 문장처럼 읽히게 만들고, IFNA로 필요한 오류만 골라 처리해요.

    난이도
    고급
    Time
    12분 분량
    수정:
    적용 대상:
    Microsoft 365용 Excel, Excel 2024, Excel 2021, 웹용 Excel
    LET 수식을 D2:D6에 복사했어요. 세 명이 목표를 달성했어요.
    예시: LET 수식을 D2:D6에 복사했어요. 세 명이 목표를 달성했어요.

    배울 내용

    • 같은 계산을 반복하는 수식을 한 번만 계산하도록 고치기
    • 이름 붙인 단계가 여러 개인 LET 수식 쓰기
    • 긴 수식을 한 층씩 만들며 확인하기
    • 진짜 실수가 보이도록 IFNA와 IFERROR 중 알맞은 것 고르기

    예제 파일

    엑셀 LET 함수로 수식을 깔끔하게 만드는 법.xlsx

    이 튜토리얼에서 사용하는 통합 문서를 내려받아 엑셀에서 직접 따라 해 보세요.

    엑셀 통합 문서(.xlsx) · 7 KB

    예제 파일 다운로드

    같은 부분이 몇 번씩 되풀이되는 긴 수식은 읽기가 어려워요. LET을 쓰면 수식 안에서 각 부분에 이름을 붙이고, 한 번만 계산한 다음 그 이름을 쓸 수 있어요. 그러면 위에서 아래로 읽히고, 한 곳만 고치면 되고, 믿을 수 있는 수식이 돼요. 이 글에서는 오류를 일부러 골라 잡는 방법도 다뤄요. 조회 결과가 없는 경우는 처리하되, 진짜 실수는 그대로 드러나게 하는 방법이에요.

    예시는 영업 담당자 다섯 명의 매출과 목표, 그리고 G1:H5에 있는 작은 보너스 배율 표를 사용해요. 배율 표에 Lena가 없다는 점을 기억해 두세요. 나중에 중요해져요.

    ABCDEFGH
    1담당자매출목표상태배율보너스담당자배율
    2Ari9,2008,000Ari1.1
    3Mina6,1007,000Mina1
    4Jon8,0008,000Jon1.2
    5Lena5,4006,000Dev1.15
    6Dev15,00012,000
    7보너스율5%
    담당자 다섯 명의 매출과 목표가 B열과 C열에 있어요. G2:H5의 배율 표에는 Lena가 없어요. 보너스율은 H7에 있어요.

    문제: 같은 계산이 반복돼요

    담당자마다 상태를 표시한다고 해 볼게요. 목표의 120% 이상이면 초과 달성, 100% 이상이면 달성, 그 밖에는 미달이에요. LET 없이 쓰면 비율 B2/C2가 조건마다 들어가야 해요.

    =IF(B2/C2>=1.2,"초과 달성",IF(B2/C2>=1,"달성","미달"))

    동작은 해요. Ari의 비율은 9,200 / 8,000 = 1.15라서 결과는 달성이에요. 하지만 비율 계산이 바뀌면(반품을 빼야 한다든가) 두 군데를 고쳐야 하고, 하나를 놓칠 수도 있어요. LET을 쓰면 비율에 이름을 붙여 한 번만 쓰면 돼요.

    =LET(ratio,B2/C2,IF(ratio>=1.2,"초과 달성",IF(ratio>=1,"달성","미달")))

    결과는 같아요. Ari는 달성, Dev는 초과 달성(15,000 / 12,000 = 1.25)이에요. 게다가 엑셀은 B2/C2를 한 번만 계산해요. 반복되는 부분이 단순한 나눗셈이 아니라 큰 조회나 FILTER일 때 특히 도움이 돼요.

    LET은 이렇게 동작해요

    =LET(name1, value1, [name2, value2, ...], calculation)
    • name1은 직접 정하는 이름이에요. ratio, sales 같은 거예요.
    • value1은 그 이름이 뜻하는 값이에요. 셀, 범위, 숫자, 계산식 전체 모두 넣을 수 있어요.
    • name2, value2, …는 넣지 않아도 돼요. 필요한 만큼 쌍을 추가하세요. 뒤의 값에서 앞에서 정한 이름을 쓸 수 있어요.
    • calculation은 항상 마지막 인수이고, 수식이 돌려주는 결과예요. 앞에서 정한 이름을 모두 쓸 수 있어요.

    이름을 지을 때 지킬 규칙이 있어요. 문자로 시작하고, 공백을 쓰지 말고, r1이나 tax2026처럼 엑셀이 셀 주소로 읽을 수 있는 이름은 피하세요. 이름은 그 수식 하나 안에서만 존재해요. 다른 셀에서 ratio라는 이름을 전혀 다른 뜻으로 써도 충돌하지 않아요.

    수식을 한 층씩 쌓아 올리기

    긴 수식을 정확하게 만드는 가장 빠른 방법은 조각조각 만들면서 다음 층으로 감싸기 전에 각 조각을 확인하는 거예요.

    1. 핵심 계산을 쓰고 확인하세요

      D2에 =B2/C2를 입력하고 Enter를 누르세요. Ari의 값으로 1.15가 나와야 해요. 이 조각이 틀리면 그 위에 쌓은 것도 맞을 수 없어요.

    2. 논리로 감싸세요

      D2를 =IF(B2/C2>=1,"달성","미달")로 고치세요. 결과는 달성이에요.

    3. 반복되는 부분에 LET으로 이름을 붙이세요

      비율에 이름이 붙도록 다시 쓰세요.

      =LET(ratio,B2/C2,IF(ratio>=1,"달성","미달"))

      D6까지 아래로 복사하세요. 결과는 달성, 미달, 달성, 미달, 달성이에요. Jon은 매출이 목표와 똑같아서 비율이 1이고, 달성으로 쳐요.

      ABCDEFGH
      1담당자매출목표상태배율보너스담당자배율
      2Ari9,2008,000달성Ari1.1
      3Mina6,1007,000미달Mina1
      4Jon8,0008,000달성Jon1.2
      5Lena5,4006,000미달Dev1.15
      6Dev15,00012,000달성
      LET 수식을 D2:D6에 복사했어요. 세 명이 목표를 달성했어요.
    4. 이상해 보이면 이름 붙인 단계를 하나씩 확인하세요

      이름에 무엇이 들어 있는지 보려면 잠시 그 이름을 마지막 인수로 두세요. =LET(ratio,B2/C2,ratio)는 비율 자체를 보여 줘요. 값이 맞으면 원래 계산을 다시 넣으세요.

    이름 붙인 단계가 여러 개인 보너스 수식

    LET은 수식에 단계가 여러 개일 때 진가를 발휘해요. 다음 수식은 목표를 달성한 담당자에게만 매출 × 보너스율 × 담당자 배율만큼 보너스를 줘요.

    =LET(ratio,B2/C2,mult,IFNA(XLOOKUP(A2,$G$2:$G$5,$H$2:$H$5),1),IF(ratio>=1,B2*$H$7*mult,0))

    엑셀 수식에는 줄 바꿈과 공백을 넣을 수 있어서, 수식 입력줄에서 다음처럼 정리할 수 있어요. 수식을 고치는 중에 Alt+Enter를 누르면 줄이 바뀌고, Ctrl+Shift+U를 누르면 수식 입력줄이 넓어져서 모든 줄이 보여요.

    =LET(
        ratio, B2/C2,
        mult,  IFNA(XLOOKUP(A2, $G$2:$G$5, $H$2:$H$5), 1),
        IF(ratio >= 1, B2 * $H$7 * mult, 0)
    )
    

    위에서 아래로 읽어 보세요. 비율은 매출 나누기 목표예요. 배율은 표에서 가져오고, 표에 없는 담당자는 1이에요. 목표를 달성했으면 매출 × 보너스율 × 배율을, 아니면 0을 줘요.

    Ari는 비율이 1.15, 배율이 1.1이니 보너스는 9,200 × 5% × 1.1 = 506이에요. 아래로 복사하면 보너스는 506, 0, 480, 0, 862.5예요.

    동적 배열과 함께 쓰는 LET

    이름에는 목록 전체를 담을 수도 있어요. 다음 수식은 목표를 달성한 담당자를 나열하고 인원도 세요. FILTER 결과를 두 번 쓰지만 계산은 한 번만 해요.

    =LET(met,FILTER(A2:A6,B2:B6>=C2:C6),ROWS(met)&"명: "&TEXTJOIN(", ",TRUE,met))

    결과는 3명: Ari, Jon, Dev예요.

    IFNA와 IFERROR: 예상한 오류만 잡기

    Lena는 배율 표에 없어서 XLOOKUP이 #N/A를 돌려줘요. 예상할 수 있는 빈자리니 처리해 두면 돼요.

    =IFNA(XLOOKUP(A5,$G$2:$G$5,$H$2:$H$5),"배율 없음")

    Lena에게는 배율 없음이 표시돼요. Ari에게는 실제 값인 1.1을 그대로 돌려줘요.

    XLOOKUP은 네 번째 인수로 이 일을 직접 할 수도 있어요. =XLOOKUP(A5,$G$2:$G$5,$H$2:$H$5,"배율 없음")처럼요. VLOOKUP이나 INDEX/MATCH처럼 그런 인수가 없는 조회에는 IFNA를 쓰세요.

    IFERROR는 왜 안 될까요? 모든 오류를 잡기 때문이에요. 꼭 봐야 하는 오류까지요.

    함수잡는 오류이럴 때 쓰세요
    IFNA#N/A만(조회 결과가 없음)일치하는 값이 없는 게 정상이고, 대신 무엇을 보여 줄지 정해져 있을 때
    IFERROR#N/A, #DIV/0!, #VALUE!, #REF!, #NAME? 등 모든 오류어떤 오류든 같은 값으로 바꿔도 된다는 걸 확인했을 때

    누군가 C3에 있는 Mina의 목표를 지웠다고 해 볼게요. =IFERROR(B3/C3,0)은 그때 생기는 #DIV/0!을 0으로 바꿔서, Mina의 상태가 조용히 미달이 되고 목표가 비었다는 걸 아무도 모르게 돼요. IFERROR가 없으면 #DIV/0!이 드러나서 누군가 고치게 돼요. 보너스 수식에서 조회 부분만 IFNA로 감싼 것처럼, 예상할 수 있는 이유로 실패하는 부분만 감싸세요.

    자주 하는 실수

    • 마지막 계산을 빠뜨리기. 마지막 인수는 이름-값 쌍이 아니라 결과여야 해요. =LET(ratio,B2/C2)는 완성되지 않은 수식이에요.
    • 셀 주소처럼 보이는 이름. r1, q4, tax2026은 모두 실제 셀 주소라서 이름으로 쓸 수 없어요. ratio, quarter4, taxRate처럼 지으세요.
    • 정의하기 전에 이름 쓰기. 각 값에서는 왼쪽에서 정의한 이름만 쓸 수 있고, 오른쪽에서 정의한 이름은 쓸 수 없어요.
    • 수식 전체를 IFERROR로 감싸기. 잡으려던 조회 실패뿐 아니라 오타, 삭제된 범위, 0으로 나누기까지 숨겨요.
    • LET 이름을 다른 셀에서 쓰려고 하기. 이름은 수식 하나 안에서만 통해요. 통합 문서 전체에서 쓸 이름은 수식 then 정의된 이름 then 이름 정의로 만드세요.

    연습

    연습

    가장 긴 수식 다시 쓰기

    1. 쓰고 있는 통합 문서에서 가장 긴 수식, 특히 같은 부분이 반복되는 수식을 찾으세요.
    2. 결과를 비교할 수 있게 먼저 통합 문서를 복사하세요(F12로 다른 이름으로 저장).
    3. 중간 단계마다 이름을 붙여 LET으로 수식을 다시 만드세요. Alt+Enter로 여러 줄에 걸쳐 정리하세요.
    4. 각 이름을 잠시 마지막 인수로 두고 값을 확인하세요.
    5. 여러 행에서 새 결과와 예전 결과를 비교하세요.
    6. 수식이 실패할 수 있는 곳마다 판단해 보세요. 조회 실패라서 IFNA로 처리할 곳인가요, 아니면 IFERROR가 꼭 봐야 할 실수를 숨기게 될 곳인가요?

    직접 해 보기4개 중 0개 완료

    1. D2에 LET으로 매출 나누기 목표에 ratio라는 이름을 붙이고, ratio가 1 이상이면 달성, 아니면 미달을 표시해 보세요.
    2. D3에 Mina의 상태를 같은 방식으로 구해 보세요.
    3. E5에 G2:H5에서 Lena의 배율을 찾아보세요. Lena는 표에 없으니 IFNA로 #N/A를 잡아 배율 없음을 표시하세요.
    4. F2에 LET으로 달성률과 Ari의 배율(없으면 1)에 이름을 붙이고, 목표를 달성했으면 매출 × H7의 보너스율 × 배율을, 아니면 0을 구해 보세요.

    점선으로 표시된 셀을 클릭하고, 입력줄에 수식을 쓴 다음 Enter를 누르세요.

    ABCDEFGH
    1담당자매출목표상태배율보너스담당자배율
    2Ari9,2008,000Ari1.1
    3Mina6,1007,000Mina1
    4Jon8,0008,000Jon1.2
    5Lena5,4006,000Dev1.15
    6Dev15,00012,000
    7보너스율5%

    실력 점검

    • B2/C2가 반복되는 수식을 비율이 한 번만 계산되도록 다시 쓸 수 있나요?
    • 뒤 단계가 앞 단계를 쓰는, 이름 붙인 단계가 두 개 이상인 LET 수식을 쓸 수 있나요?
    • 수식을 만드는 동안 이름 붙인 단계 하나가 무엇을 돌려주는지 확인할 수 있나요?
    • IFERROR와 IFNA의 차이와 각각 언제 알맞은지 설명할 수 있나요?

    관련 자료

    도움이 되었나요? 틀린 부분을 발견하셨나요? 피드백 보내기 · admin@arumsoft.com