ExcelCHOOSE인덱스 선택

엑셀 CHOOSE

인덱스 번호로 여러 후보 중 N번째를 골라 반환합니다. 요일 변환·분기 선택의 클래식 함수

CHOOSE 수식 구조

=CHOOSE(번호, 값1, 값2, …, 값N)

번호 (index_num)

1부터 시작하는 정수. 소수면 정수부만 사용 (2.7 → 2). 범위 벗어나면 #VALUE!.

값N (value1, value2, …)

후보 목록. 텍스트·숫자·셀 참조·범위·수식 모두 가능. 최대 254개.

0이나 음수, N+1 이상이면 #VALUE! 오류

▸ 인수에 범위를 넣을 수도 있음 — INDIRECT처럼 동적 참조 가능

▸ Excel 모든 버전에서 동작. SWITCH(2019+)보다 호환성이 좋음

직접 체험해보세요 — 요일 번호 → 한글

슬라이더로 인덱스를 바꾸면 CHOOSE가 그 위치의 후보를 골라 반환합니다

B2=CHOOSE(3, "일","월","화","수","목","금","토")
3
1🌅
2
3🔥
4💧
5🌳
6🎉
7🌊

인덱스 33번째 후보를 반환

🔥 "화"

CHOOSE vs SWITCH

요일 변환을 두 방식으로 비교 — 입력이 연속된 정수면 CHOOSE가 짧고, 임의 값이면 SWITCH가 명확

번호 → 값CHOOSE
=CHOOSE(WEEKDAY(A1),
"일","월","화","수",
"목","금","토")
  • 위치(인덱스)로 선택
  • 입력은 반드시 정수 1~N
  • 후보 수만큼 인수 필요
값 → 값SWITCH
=SWITCH(WEEKDAY(A1),
1,"일", 2,"월", 3,"화",
4,"수", 5,"목",
6,"금", 7,"토")
  • 값 매칭으로 선택
  • "P", "S" 같은 임의의 값 OK
  • 입력이 연속된 정수면 CHOOSE가 짧음

실전 활용 예제

=CHOOSE(WEEKDAY(A2), "일","월","화","수","목","금","토")

WEEKDAY 결과(1~7)를 한글 요일로. CHOOSE의 가장 클래식한 사용법 — 입력이 연속 정수라 SWITCH보다 짧음.

예시: 2025-12-25 (목요일, WEEKDAY=5)"목"
=CHOOSE(MONTH(A2)/3+0.7, "1Q","2Q","3Q","4Q")

월 → 분기 변환 트릭. (월/3 + 0.7)의 정수부가 1~4가 되도록 설계. 정수 인덱스 만들기의 응용.

예시: 11월"4Q"
=SUM(CHOOSE(2, A1:A10, B1:B10, C1:C10))

CHOOSE는 범위도 반환할 수 있어 동적 SUM 같은 패턴 가능. 2번째 후보(B1:B10)를 통째로 SUM에 전달.

예시: B열 합계 (동적 선택)범위 → 집계
=CHOOSE(RANDBETWEEN(1,3), "가위","바위","보")

RANDBETWEEN으로 랜덤 정수를 만들어 CHOOSE에 넣으면 즉석 추첨기. 가위바위보·메뉴 랜덤 선택 등.

예시: 실행할 때마다 무작위"가위" 등
더 알아보기

CHOOSE vs SWITCH vs INDEX

CHOOSE — 인덱스 번호로 후보 선택

후보를 수식에 직접 적어둠. 후보가 2~7개로 적고 입력이 정수 시퀀스(1, 2, 3…)일 때 최적.

SWITCH — 값 매칭

입력이 "P", "S" 같은 임의 값일 때 유리. 인덱스가 연속 정수가 아니거나 의미 있는 코드면 SWITCH가 자연.

INDEX — 셀 범위에서 N번째

후보가 시트 셀에 있을 때. 후보가 많거나 사용자가 직접 수정해야 하면 INDEX가 깔끔.

판단 기준: 후보를 수식에 박을지(CHOOSE/SWITCH), 셀에서 끌어올지(INDEX). 박는다면 입력이 정수면 CHOOSE, 값이면 SWITCH.

CHOOSE로 동적 범위 만들기

CHOOSE의 인수는 값뿐 아니라 범위도 받습니다. 이를 이용한 동적 범위 패턴이 강력합니다.

패턴 — 시트/지역 선택 합계

=SUM(CHOOSE(E1, Seoul!B:B, Busan!B:B, Daegu!B:B))

E1에 1/2/3을 두면 서울/부산/대구 합계를 골라 계산. INDIRECT 대안으로 사용 — 휘발성이 없어 빠름.

VLOOKUP의 왼쪽 조회 트릭

=VLOOKUP(E1, CHOOSE({1,2}, B:B, A:A), 2, 0)

CHOOSE로 가상 표를 만들어 열 순서를 뒤집음 → VLOOKUP이 왼쪽 조회 가능. XLOOKUP 없던 시절의 클래식 트릭.

#VALUE! 오류 — 인덱스가 범위 밖

CHOOSE의 가장 흔한 오류. 인덱스가 1보다 작거나 후보 수보다 크면 #VALUE!.

  • WEEKDAY 결과가 1~7인데 후보를 6개만 넣음
  • 0이나 음수를 인덱스로 받음 (예: 빈 셀로 인한 0)
  • 소수 인덱스의 정수부가 0 (0.9 → 0)

해결 — IFERROR로 감싸기

=IFERROR(CHOOSE(E1, "A","B","C"), "잘못된 입력")

자주 묻는 질문 (FAQ)

Q. 인덱스가 0부터 시작하나요?

아니요. 1부터 시작합니다. 0은 #VALUE! 오류. 프로그래밍 언어처럼 0-based 인덱스에 익숙하면 실수하기 쉬움.

Q. 후보를 100개 넘게 넣을 수 있나요?

254개까지. 다만 10개를 넘기면 가독성·유지보수 측면에서 VLOOKUP·INDEX + 참조표가 훨씬 낫습니다.

Q. CHOOSE에 수식을 넣으면 모두 계산되나요?

네. CHOOSE는 모든 인수를 미리 평가한 후 선택합니다 (lazy evaluation 아님). 따라서 비싼 수식이 여러 개라면 IF 조합이 더 효율적일 수 있음.

Q. 구글 스프레드시트에서도 동일한가요?

네. CHOOSE는 구글 시트에서도 같은 문법·동작입니다.