Ch.7 실기 실전 연습

실기 — 배열 수식 & INDIRECT 실전

CSE(Ctrl+Shift+Enter) 배열 수식의 작동 원리를 이해하고 정확히 입력할 수 있다조건부 SUM, MAX 등 배열 수식 패턴을 시험에서 활용할 수 있다INDIRECT 함수로 동적 시트/범위 참조를 설정할 수 있다

배열 수식 & INDIRECT — 계산 작업 5점짜리 심화 문항

배열 수식으로 조건부 합계/최댓값을 구하고, INDIRECT로 동적 시트를 참조하는 상황

Ctrl+Shift+Enter를 잊으면 수식이 작동하지 않고, INDIRECT는 문자열 조합이 까다롭습니다

패턴을 암기하고 CSE 입력을 습관화하면 확실한 득점원이 됩니다


article

핵심 내용

배열 수식은 여러 셀의 값을 한꺼번에 계산하는 수식입니다. 일반 수식은 Enter로 확정하지만, 배열 수식은 Ctrl+Shift+Enter(CSE)로 입력해야 합니다.

수식 입력: 일반 수식처럼 셀에 수식 작성

CSE 확정: Enter 대신 Ctrl+Shift+Enter 누르기

중괄호 확인: 수식 표시줄에 {=...} 형태로 표시되면 성공

중괄호 {}는 직접 타이핑하면 안 됩니다! 반드시 Ctrl+Shift+Enter로 입력해야 엑셀이 자동으로 {} 를 붙여줍니다. 직접 {} 를 입력하면 문자열로 인식됩니다.

[배열 수식] 조건부 SUM — SUMIF 대체
{=SUM(IF(A2:A10="영업",C2:C10))}

→ A열이 "영업"인 행의 C열 합계
→ IF가 배열로 {500,FALSE,300,FALSE,...} 반환
→ SUM이 FALSE를 무시하고 숫자만 합산

입력 방법:
1. =SUM(IF(A2:A10="영업",C2:C10)) 타이핑
2. Ctrl+Shift+Enter
3. 수식 표시줄에 {=SUM(IF(...))} 확인
[배열 수식] 조건부 MAX — MAXIFS 대체
{=MAX(IF(A2:A10="영업",C2:C10))}

→ A열이 "영업"인 행 중 C열 최댓값
→ MAXIFS는 2019 이상에서만 지원
→ 배열 수식은 모든 버전에서 동작

응용: 조건부 MIN
{=MIN(IF(A2:A10="영업",IF(C2:C10<>"",C2:C10)))}
→ 빈 셀 제외, 영업부 최솟값
→ 빈 셀을 제외하지 않으면 0이 나옴!
[배열 수식] 다중 조건 합계
{=SUM((A2:A10="영업")*(B2:B10="서울")*(C2:C10))}

→ A열="영업" AND B열="서울"인 행의 C열 합계
→ TRUE*TRUE*값 = 값, FALSE가 하나라도 있으면 0

비교: SUMPRODUCT vs 배열 수식

SUMPRODUCT:
=SUMPRODUCT((A2:A10="영업")*(B2:B10="서울")*(C2:C10))
→ Enter로 입력 (CSE 불필요)

배열 수식:
{=SUM((A2:A10="영업")*(B2:B10="서울")*(C2:C10))}
→ Ctrl+Shift+Enter 필요

결과는 동일! 시험 지시에 따라 선택

INDIRECT는 문자열을 셀 참조로 변환하는 함수입니다. 셀 값이나 수식 결과로 동적으로 참조를 바꿀 수 있어 시험에서 자주 출제됩니다.

[INDIRECT 기본 사용법]

1. 셀 참조 문자열 → 실제 참조
   =INDIRECT("B5")  → B5 셀의 값을 반환
   =INDIRECT("A"&ROW()) → A열의 현재 행 참조

2. 동적 시트 참조
   =INDIRECT("'"&A1&"'!B2")
   → A1이 "1월"이면 → '1월'!B2 참조
   → A1이 "2월"이면 → '2월'!B2 참조

3. 시트명 + 셀 주소 조합
   =INDIRECT(A1&"!"&B1)
   → A1="Sheet2", B1="C5" → Sheet2!C5 참조
[INDIRECT + 이름 정의]

이름 정의: "영업" = Sheet1!C2:C10
          "기획" = Sheet1!D2:D10

=SUM(INDIRECT(A1))
→ A1이 "영업"이면 → SUM(영업) = SUM(C2:C10)
→ A1이 "기획"이면 → SUM(기획) = SUM(D2:D10)

응용: 유효성 검사 드롭다운 + INDIRECT
→ 드롭다운에서 부서 선택
→ INDIRECT가 해당 부서의 이름 범위 참조
→ 자동으로 합계/평균 계산

INDIRECT 주의: 참조하는 시트명에 공백이나 특수문자가 있으면 반드시 작은따옴표로 감싸야 합니다. INDIRECT("'시트 1'!A1") 형태.

배열 수식 {=SUM(IF(A2:A10="영업",C2:C10))}을 입력할 때 올바른 확정 방법은?

A1 셀에 "매출"이 입력되어 있고, "매출"이라는 이름이 B2:B100으로 정의되어 있을 때, =SUM(INDIRECT(A1))의 결과는?

배열 수식이 정상 입력되면 수식 표시줄에 ____ 기호가 수식 양쪽에 자동 표시된다.

감점 1: CSE 미입력 — Enter만 누르면 배열이 아닌 일반 수식으로 처리되어 결과가 다릅니다. 반드시 Ctrl+Shift+Enter!

감점 2: 조건부 MIN에서 빈 셀 미처리 — 빈 셀이 0으로 처리되어 MIN 결과가 0이 됩니다. IF(C<>"",C) 조건 추가 필수.

감점 3: INDIRECT 시트 참조에서 작은따옴표 누락 — 시트명에 공백/특수문자가 있으면 '시트명'!셀 형식 필수.

check_circle

핵심 정리

  • 1배열 수식: Ctrl+Shift+Enter(CSE) — 중괄호 직접 입력 금지
  • 2조건부 SUM: {=SUM(IF(조건,값))} — SUMIF 대체
  • 3조건부 MAX: {=MAX(IF(조건,값))} — MAXIFS 대체 (하위 버전 호환)
  • 4다중 조건: {=SUM((조건1)*(조건2)*(값))} — SUMPRODUCT와 동일 결과
  • 5INDIRECT: 문자열→참조 변환, 동적 시트/이름 참조에 활용

퀴즈와 인터랙션으로 더 깊이 학습하세요

play_circle인터랙티브 레슨 시작