오빠두엑셀 `2026 무료 챌린지` 오픈! 완주하고 수료증 받아가세요! 5년 연속 IT분야 베스트셀러! 「 진짜쓰는 실무엑셀 」로 2026년 공부 끝내기 엑셀이 막히셨나요? Q&A 게시판에서 바로 해결하세요.
메뉴
엑셀 고급 강의

다중유효성 목록상자 만들기

오빠두엑셀 by 오빠두엑셀
  • 학습시간 23분
  • 난이도 중급
  • 작성일 2019.12.04

체계적인 데이터 관리를 위한 필수스킬! - 동적 다중유효성 목록상자

이 강의에서는 OFFSET 함수의 동적범위와 MATCH·COUNTIFS 함수를 조합해 2중·3중 데이터 유효성 검사 목록상자를 만드는 방법을 다룹니다. 고유값을 추출하는 세 가지 방법부터 단계별 사용자 지정 범위로 목록상자를 연동하는 절차, 여러 셀에 동시에 적용할 때의 참조 방식까지 정리해 실무 양식에 바로 활용할 수 있는 자동화 패턴을 알아봅니다.

다중유효성 목록상자 만들기
DOWNLOADS

실습자료를 준비했어요

수업에서 사용한 예제 파일과 보충 자료를 한 곳에 정리했습니다!👇

실습 가이드
업데이트 노트
  • 2018.01.30
    여러 셀에 걸쳐 다중유효성 검사 목록상자를 적용하는 방법을 추가했습니다. 자세한 설명은 자주묻는질문 Q1 및 보충파일을 참고하세요.

공식 요약

이중유효성검사 목록상자 공식

= OFFSET ($시작셀, MATCH(참조값, $참조범위,0)-1, 1, COUNTIF($참조범위,참조셀), 1)
인수 설명
$시작셀 참조 범위의 첫 번째 셀입니다. 절대참조로 입력합니다.
참조값 유효성 검사로 불러올 조건(이전 단계의 값)이 입력된 셀입니다.
$참조범위 참조값을 찾을 범위입니다. 절대참조로 입력합니다.

다중유효성검사 목록상자 공식

= OFFSET ($시작셀, MATCH(1,-(($범위1=참조값1)*($범위2=참조값2)...),0)-1, n, COUNTIFS($범위1,참조값1,$범위2,참조값2,...), 1)
인수 설명
$시작셀 원본 데이터의 좌측 상단 첫 번째 셀입니다. 절대참조로 입력합니다.
참조값1, 참조값2, ... 유효성 검사로 불러올 조건(이전 단계의 값)이 입력된 셀입니다. 상황에 따라 절대참조 또는 혼합참조로 입력합니다.
$범위1, $범위2, ... 각각의 참조값을 찾을 범위입니다. 각 범위는 반드시 오름차순 또는 내림차순으로 정렬되어 있어야 합니다. 절대참조로 입력합니다.
n 다중 유효성 검사로 넘어가는 단계 수입니다.

강의소개

이번 강의에서는 실무에 바로 적용할 수 있는 '다중 데이터 유효성 목록상자'를 만드는 방법을 살펴봅니다. 이전 강의에서는 '표 기능'을 활용해 이중 데이터 유효성 검사 목록상자를 만드는 방법을 소개해 드렸습니다.

표 기능을 사용하면 다중조건 목록상자를 비교적 간단하게 만들 수 있지만, 아래 2가지 제한이 있어 상황에 따라 실무에 그대로 적용하기 어려운 단점이 있었습니다.

  1. 2단계를 넘어가는 데이터 유효성 검사 목록상자를 만들기 어렵습니다.
    (예: 조건1 ▶ 조건2 ▶ 조건3 … 으로 이어지는 다중조건 유효성 검사)
  2. 관리해야 할 항목이 많아지면 모든 항목을 표로 관리하기에 한계가 있습니다. 따라서 데이터 양이 많을 때는 다른 효율적인 방법이 필요합니다.

즉, 많은 양의 데이터를 다중조건 데이터 유효성 검사로 적용하려면 '표 기능'이 아닌 다른 효율적인 방법이 필요합니다. 이번 강의에서는 '동적범위'를 응용한 다중 데이터 유효성 검사 공식을 활용해 2중·3중 이상의 다중조건 목록상자를 만드는 방법을 알아봅니다.

다중 데이터 유효성 검사 목록상자 만들기

목록상자에 나열할 각 데이터의 고유값을 추출합니다. 고유값을 추출하는 방법은 크게 3가지가 있으며, 각 방법마다 장·단점이 있으므로 상황에 맞게 선택해 사용합니다.

피벗테이블로 고유값을 추출하는 방법
장점 만들기 편리합니다. 피벗테이블의 원본 데이터에 동적범위를 적용하면 새로 추가된 데이터가 자동으로 반영됩니다.
단점 데이터가 추가될 때마다 새로고침(Ctrl + Alt + 5)으로 피벗테이블을 직접 갱신해야 합니다.
  1. 고유값을 추출할 범위를 선택한 뒤, '삽입' – '피벗테이블' 또는 단축키 ALTNV피벗테이블을 생성합니다.

    다중 데이터 유효성 피벗테이블 만들기

  2. 오른쪽 '피벗 필드' 창에서 '구분' 항목을 행 영역으로 이동합니다.

    1b 구분 행 추가

  3. 상단의 '디자인' 탭에서 '총합계' – '행 및 열의 총합계 해제'를 클릭하여 총합계 표시를 해제합니다.

    1c 디자인 총합계 해제

  4. 피벗테이블을 활용한 고유값 추출이 완료되었습니다.

    1d 고유값 추출 완료

중복값 제거 공식을 이용하는 방법
장점 새로 추가된 데이터가 실시간으로 반영됩니다.
단점 처음 접하는 분들에게는 다소 어렵게 느껴질 수 있습니다. 데이터가 많은 시트에 적용하면 처리 속도가 느려질 수 있습니다.
  1. 고유값 추출을 시작할 셀(예제파일의 H9셀)을 선택합니다.

    다중 데이터 유효성 고유값 범위 공식

  2. 아래 공식을 복사하여 붙여넣은 뒤, 고유값을 나열할 범위까지 자동 채우기로 수식을 확장합니다.
    =IFERROR(LOOKUP(2,1/(COUNTIF($H$8:H8,표9[구분])=0),표9[구분]),"")

    2B 중복값 제거 공식 이용 완료

중복된 항목 제거 기능을 이용하는 방법
장점 사용 방법이 매우 간편합니다. 데이터가 많아도 파일을 가볍게 유지할 수 있습니다.
단점 새로운 데이터가 추가될 때마다 중복값 제거 기능을 다시 실행해야 합니다.
  1. 고유값을 추출할 범위를 복사한 뒤, 다른 위치에 붙여넣기 합니다.

    3A 고유값 범위 복사 붙여넣기

  2. 붙여넣은 범위를 선택한 후 상단의 '데이터' – '중복된 항목 제거'를 클릭합니다. 고유값을 추출할 열을 선택한 뒤 '확인' 버튼을 누릅니다.

    3B 중복된 항목 제거 기능

  3. 고유값 추출이 완료되었습니다.

    3C 고유값 추출 완료

다중 데이터 유효성 검사 목록상자의 조건이 될 범위를 생성합니다. 본 예제에서는 '구분' 항목이 다중 데이터 유효성 검사의 첫 번째 조건이 됩니다.

예를 들어,
'커피'를 선택하면 '에스프레소', '아메리카노', '카푸치노' … 등이 나열되며,
'차'를 선택하면 '얼그레이', '카모마일', '보이차' … 등이 나열됩니다.
  1. 이전 강의에서 살펴본 OFFSET 함수 동적범위를 응용하여 사용자 지정 범위를 생성합니다.
    '이름 관리자'(단축키: CTRL + F3)로 이동한 뒤, 아래와 같이 사용자 지정 범위를 만들어 주세요.

    이름 : 예제1_목록상자_1
    참조대상 : =OFFSET($D$9,,,COUNTA($D$9:$D$100))

    엑셀 다중 데이터 유효성 목록상자 만들기

  2. 데이터 유효성 목록상자를 적용할 셀(예제파일의 O4셀)을 선택한 뒤, '데이터' – '데이터 유효성 검사'로 이동합니다.
    이어서 '제한 대상'은 '목록'을 선택하고 '원본'에서 키보드 F3키를 누르면 '이름 붙여넣기' 창이 열립니다. 방금 추가한 '예제1_목록상자_1'을 선택해 목록상자를 적용합니다.

    4B 데이터유효성 목록상자 추가

  3. 선택한 셀에 데이터 유효성 목록상자가 적용되었습니다.

    다중 데이터 유효성 검사

C. 다중 유효성검사 목록상자 만들기 (1차 조건에 따른 2차목록)

1차 조건에 따라 동작하는 두 번째 목록상자에 사용할 사용자 지정 범위를 추가합니다. OFFSET 동적범위와 함께 MATCH 함수를 활용해 다중조건을 처리합니다. 공식의 동작 원리에 대한 자세한 설명은 영상강의 또는 공식 정리 포스트를 참고하세요.

  1. 예제 시트의 빈 셀을 선택한 후, 아래 공식을 복사하여 붙여넣습니다. (#VALUE! 오류가 표시되어도 정상 동작이니 그대로 진행하세요.)
    =OFFSET($A$4,MATCH($O$4,표9[구분],0)-1,1,COUNTIF(표9[구분],$O$4),1)

    5A 공식 붙여넣기

  2. 붙여넣은 셀을 선택한 후 상단의 '수식 입력줄'을 클릭합니다. 이어서 키보드 F9키를 누르면 1차 조건에 해당하는 제품 목록이 펼쳐져 나타납니다.

    5B 수식입력줄 수식 검사

  3. 공식이 정상적으로 동작하는 것을 확인했으니 '사용자 지정 범위'를 추가합니다. 앞서와 동일하게 '수식' – '이름 관리자' 또는 단축키(CTRL + F3)로 이름 관리자에 진입하여 사용자 지정 범위를 만듭니다.
    이름 : 예제1_목록상자_2
    참조대상 : =OFFSET($A$4,MATCH($O$4,표9[구분],0)-1,1,COUNTIF(표9[구분],$O$4))

    다중 데이터 유효성 목록상자 사용자 지정 범위 생성

  4. 다중 데이터 유효성 목록상자를 적용할 셀을 선택합니다(예제파일의 O5셀). 이후 '데이터' – '데이터 유효성 검사'를 클릭합니다. '제한 대상'은 '목록'을 선택합니다. '원본'을 클릭한 뒤 키보드 F3키를 눌러 방금 추가한 '예제1_목록상자_2'를 원본 범위로 입력하고 '확인'을 눌러 마무리합니다.

    다중 데이터 유효성 목록상자 만들기

  5. 1차 조건에 연동되는 다중 데이터 유효성 검사 목록상자가 완성되었습니다.

    5E 다중조건 목록상자 완성

다중 데이터 유효성 검사 공식을 응용하면 2중·3중 이상의 데이터 유효성 검사 목록상자를 자동화할 수 있습니다.

본 예제에서는 자동차의 '브랜드'를 선택하면 해당 브랜드의 '차종'이 나오고, '차종'을 선택하면 해당 '브랜드'와 '차종'을 모두 만족하는 '제품'이 나열되도록 3중 데이터 유효성 검사 목록상자를 만들어 봅니다.

A. 데이터 유효성 목록상자를 위한 고유값 추출

피벗테이블을 이용해 고유값을 추출합니다. 예제파일 '다중조건 3단계 이상~' 시트에서 더하기(+) 버튼을 클릭하면 미리 고유값을 정리해 둔 피벗테이블이 펼쳐집니다.

6A 고유값 추출 완료

각 항목별 고유값은 아래 단계로 생성합니다.

  • 1단계 : 최상위 항목인 '브랜드'의 고유값을 추출합니다.
  • 2단계 : '브랜드'별 '차종'의 고유값을 추출합니다.
  • 3단계 : '브랜드'와 '차종'을 모두 만족하는 제품의 고유값을 추출합니다.
B. 각 단계별 목록상자를 위한 사용자지정범위 만들기

각 단계별로 목록상자를 출력하기 위한 사용자 지정 범위를 생성합니다. '삽입' – '이름 관리자' 또는 단축키 CTRL + F3키로 이름 관리자에 진입한 뒤, '새로 만들기' 버튼으로 아래 3개의 사용자 지정 범위를 만들어 주세요.

  1. '브랜드' 항목 사용자 지정 범위
    이름 : 예제2_목록상자_1
    참조대상 : =OFFSET($G$2,,,COUNTA($G$2:$G$100))
  2. '차종' 항목 사용자 지정 범위
    이름 : 예제2_목록상자_2
    참조대상 :
    =OFFSET($I$2,MATCH($P$2,$I$2:$I$100,0)-1,1,COUNTIF($I$2:$I$100,$P$2),1)
  3. '제품명' 항목 사용자 지정 범위
    이름 : 예제2_목록상자_3
    참조대상 :
    =OFFSET($L$2,MATCH(1,--(($L$2:$L$100=$P$2)*($M$2:$M$100=$Q$2)),0)-1,2,COUNTIFS($L$2:$L$100,$P$2,$M$2:$M$100,$Q$2),1)

3개의 사용자 지정 범위 생성을 마쳤다면, 각 항목별 지정 셀에 다중 데이터 유효성 검사 목록상자를 적용합니다.

C. 이중, 삼중 데이터유효성 검사 목록상자 만들기

데이터 유효성 검사를 적용할 셀을 선택한 뒤, '데이터' – '데이터 유효성 검사'에서 목록상자를 생성합니다.

  • P2셀(브랜드) : 예제2_목록상자_1
  • Q2셀(차종) : 예제2_목록상자_2
  • R2셀(제품명) : 예제2_목록상자_3

데이터 유효성 검사를 적용하는 과정에서 아래와 같은 오류 메시지가 나타날 수 있으나, 무시하고 진행해도 됩니다.

다중 데이터 유효성 오류 발생가능

각 셀에 데이터 유효성 목록상자를 적용하면 [브랜드] – [차종] – [제품명] 순으로 단계가 이어지면서 제한된 조건 안의 항목만 선택할 수 있도록 사용자 입력을 통제할 수 있습니다.

다중 데이터 유효성 검사 목록상자 사용예제

동적범위를 응용한 다중조건 데이터 유효성 목록상자를 사용할 때는 아래 2가지를 주의해야 합니다.

A. 목록상자 출력을 위한 고유값 범위는 반드시 연속되어야 합니다.

목록상자 출력에 사용할 고유값 범위가 연속되지 않고 떨어져 있으면, 하위 단계의 데이터 유효성 검사 목록상자에서 잘못된 값이 반환될 수 있습니다.

예를 들어, 아래와 같이 '커피' 구분의 제품이 연속되지 않고 떨어져서 입력되었다고 가정해 보겠습니다.

8A 떨어진 고유값 입력

이런 경우 하위 단계 목록상자에는 '커피' 구분이 아닌 '얼그레이' 제품이 잘못 표시됩니다.

8B 옳지않은 목록상자 값 출력

이 문제는 피벗테이블로 고유값을 출력하면 해결할 수 있습니다. 피벗테이블은 고유값을 추출하는 과정에서 값이 '자동 정렬'되므로, 원본 데이터의 입력 순서와 관계없이 항상 정상 동작합니다.

다중 데이터 유효성 목록상자 문제해결

B. 피벗테이블 사용할 경우, 신규 데이터 추가 시 '데이터 새로고침' 작업 필요

피벗테이블을 사용하는 경우, 새로운 데이터가 추가될 때마다 '데이터 새로고침'으로 피벗테이블을 갱신해야 합니다. 특정 피벗테이블만 갱신하려면 해당 피벗테이블을 선택한 뒤 '데이터' – '모두 새로고침' – '새로고침'을 차례로 선택합니다.

또는 '데이터' – '모두 새로고침'을 클릭하여 시트 안의 모든 피벗테이블을 한 번에 업데이트할 수도 있습니다.

8E 모두 새로고침

데이터유효성 목록상자 완성 후 코드번호 출력

선택된 목록상자의 모든 조건이 채워지면, 각 조건을 모두 만족하는 특정 값(예제파일에서는 제품의 코드번호)을 추출해야 합니다.

여러 조건을 동시에 만족하는 VLOOKUP 검색은 INDEX 함수MATCH 함수를 조합하여 작성합니다. 관련 내용은 별도 영상강의로 정리되어 있으니 관련 링크를 참고하세요.

자주묻는 질문

Q1. 다중조건 데이터 유효성 목록상자를 여러 셀에 동시에 적용하고 싶어요

다중 데이터 유효성 목록상자를 여러 셀에 걸쳐 동시에 적용해야 하는 경우가 있습니다. 이때는 공식에 사용된 참조값(예제파일의 P2셀, Q2셀)의 참조 방식을 변경합니다. 기존의 절대참조($A$1) 방식에서 열 절대참조($A1) 방식으로 변경하면 되는데요. 혼합참조에 대한 자세한 설명은 관련 포스트를 참고하세요.

= OFFSET ($시작셀, MATCH(1,-(($범위1=참조값1)*($범위2=참조값2)...),0)-1, n, COUNTIFS($범위1,참조값1,$범위2,참조값2,...), 1)
'참조값의 참조방식을 열 절대참조($A1) 형태로 입력합니다.

다중데이터 유효성 목록상자 여러셀 적용 설명

절대참조에서 열 절대참조 형식으로 변경하려면, 수식 안의 $P$2셀과 $Q$2셀을 선택한 뒤 F4키를 두 번 누르면 열 절대참조로 전환됩니다.

열 절대참조 변경

따라서 예제파일의 [예제2_목록상자_2]와 [예제2_목록상자_3]의 수식을 아래와 같이 변경하면 여러 셀에 동시에 다중 데이터 유효성 목록상자를 적용할 수 있습니다.

  1. [ 예제2_목록상자_2 ] 이름 정의 범위의 수식을 변경합니다.
    =OFFSET($I$2,MATCH($P2,$I$2:$I$100,0)-1,1,COUNTIF($I$2:$I$100,$P2),1)
  2. [ 예제2_목록상자_3 ] 이름 정의 범위의 수식을 변경합니다.
    =OFFSET($L$2,MATCH(1,--(($L$2:$L$100=$P2)*($M$2:$M$100=$Q2)),0)-1,2,COUNTIFS($L$2:$L$100,$P2,$M$2:$M$100,$Q2),1)
  3. 이름 정의 범위 생성을 마쳤다면, 적용 범위를 선택한 뒤 데이터 유효성 검사 목록상자를 적용합니다.

    범위 선택 후 다중 데이터유효성 목록상자 입력

  4. 여러 셀에 동시에 다중 데이터 유효성 검사 목록상자를 적용했습니다.

    다중조건 데이터 유효성 목록상자 여러셀 적용 GIF

  • 주의사항 : 이름 정의 범위 공식을 입력할 때 절대참조($)가 붙지 않은 셀이 참조되어 있으면, 최종 입력 시점에 참조 셀의 위치가 어긋나 값이 변경될 수 있습니다.
    따라서 반드시 '데이터 유효성 목록상자'가 적용될 첫 번째 셀이 선택된 상태에서 이름 정의 범위 공식을 입력합니다.

    다중조건 유효성 검사 수식 오류

링크] MS 홈페이지 데이터 유효성 검사 상세설명 바로가기

댓글 96
5 (44개 평가)
띵나
띵나 2019.12.24 03:35
이 함수 많이 사용하면 엑셀이 느려지지는 않나요?
오빠두엑셀
오빠두엑셀 2019.12.24 03:40
본 공식에서 INDEX 함수는 배열수식으로 사용되므로 처리속도에 영향을 줄수 있습니다.
다만 10만행/50열이하 작은 데이터에서는 영향이 없다고 보셔도 괜찮습니다.^-^
그 이상의 큰 데이터라면 직접 사용해보신 뒤 고려해보세요 ^_^
고모두`
고모두` 2019.12.24 03:36
안녕하세요 선생님 ~
혹시 피벗테이블에 필터를 각각 거는 방법이 궁굼합니다.

그리고 + - 숨기기 해놓은 방법을 알수 있을까요?
오빠두엑셀
오빠두엑셀 2019.12.24 03:36
고모두님 안녕하세요? 오빠두엑셀이에요 ^_^*
음.. 필터를 각각 거는 방법이 어떤걸 의미하는지 정확히 모르겠으나, 아래 방법이 맞는지 확인해보시겠어요?
피벗테이블 우클릭 - [피벗테이블 옵션] 에서 아래와 같이 설정해보세요.
https://uploads.disquscdn.com/images/e645de5ee1ed4937af3b5d0e03b2e92c1ad05629fcb55b22fc2b8a62dbcda51f.png

+ - 숨기기 해놓는 방법도 동일하게, 피벗테이블 옵션에서 설정하실 수 있습니다.^_^* https://uploads.disquscdn.com/images/468d7762097ed0ec0f38334f2ccb8a2101ef53c7a79ae9bf2518549a7f642a62.png
최영민
최영민 2019.12.26 01:27
오빠두 선생님 좋은 강의 잘 보고 있습니다. 많은 도움되고있습니다.
제가 직장인이라 정식 공부는 못하고 오빠두님께서 올려주신 파일 보면서 따라하는 정도인데
한가지 질문드립니다.
위의 수식에 보면 -- 이부호가 많이 들어가는데 이게 그냥 빼기 의미인지 2번연속으로 들어가는 이유가 뭐지 궁금합니다.
그리고 3중 또는 4중5중으로 연결할 경우 수식이 어떻게 되는지도 궁금합니다.
오빠두엑셀
오빠두엑셀 작성자 2019.12.27 16:51
안녕하세요? 오빠두엑셀입니다.^_^*
빼기 두개 기호(--) 는 논리값을 숫자값으로 변환하는 기호입니다. (계산을 위함)

3중, 4중으로 조건이 들어갈 경우 아래 공식을 조건개수에 따라 변경해주시면 되는데요.
= OFFSET (시작셀, MATCH(1,-((범위1=참조값1)*(범위2=참조값2)…),0)-1, n, COUNTIFS(범위1,참조값1,범위2,참조값2,…), 1)

예를 들어 3중일 경우
= OFFSET (시작셀, MATCH(1,-((범위1=참조값1)*(범위2=참조값2)*(범위3=참조값3),0)-1, 3, COUNTIFS(범위1,참조값1,범위2,참조값2,범위3,참조값3), 1)

4중일경우,
= OFFSET (시작셀, MATCH(1,-((범위1=참조값1)*(범위2=참조값2)*(범위3=참조값3)*(범위4=참조값4),0)-1, 4, COUNTIFS(범위1,참조값1,범위2,참조값2,범위3,참조값3,범위4,참조값4), 1)

로 입력하시면 됩니다.^_^
다만 조건이 많고 자료의 양도 클 경우 파일 동작속도에 영향을 줄 수 있으니 참고해주세요!
최영민
최영민 2019.12.30 02:00
답글 정말 감사드립니다. 2020년도는 더 대박나십시오!
stevesh****
stevesh**** 2023.08.09 10:11
안녕하세요! 위의 3중,4중의 예시는 빼기기호가 하나만 들어갔는데 영상에서는 빼기기호가 하나만 들어간 것 같은데요. 빼기기호수에 따른 차이가 있을까요?
최영민
최영민 2019.12.26 03:24
https://uploads.disquscdn.com/images/7438f5d2f22d3e015dbafddedbcbf033ac019534cc0fc6e7f7d82070a04712e4.png

선생님 한가지 질문 추가 드립니다.

이번에 강의해주신 내용대로 다 해보니 한가지 궁금한점이

이번 수식이 셀한개만 고정이 되어있다보니 첨부그림에 표시해놓은 것처럼 아래로 복사해서 여러개로

사용하려니 되지가 않네요....이거 해결할 방법이 있을까요???
오빠두엑셀
오빠두엑셀 작성자 2019.12.27 16:53
안녕하세요? 오빠두엑셀입니다^_^

여러 셀에 동시에 적용하시려면,
우선 범위를 선택하세요.
이후, 데이터유효성 - 데이터유효성 검사 - [목록] - [이름정의범위 선택] 으로 범위에 데이터유효성 검사를 적용해주시면 됩니다.
BOLL
BOLL 2019.12.30 02:19
선생님 알려주신데로 해봐도.. 이게 이름정의범위 수식에서 절대참조가 설정이 되어있어서 첫줄 말고는 먹히지가 않는데....뭔가 제가 잘 못하고있는지 도움 부탁드립니다.
오빠두엑셀
오빠두엑셀 작성자 2019.12.30 05:25
안녕하세요?^_^*
아래와 이미지와 같이
1] 범위를 선택하신 후, 2]이름정의범의를 적용해주시면 됩니다.
각 열마다 각 이름정의범의를 하나씩 지정해보시겠어요?
https://imgur.com/a/6B9KXxw
무우쭝
무우쭝 2020.01.14 14:06
안녕하세요. 오빠두엑셀님!
완성예제파일에서 살펴보아도 기아/승용..부분(다중유효성적용셀)을 하기로 붙여넣기 한 후에 값을 바꾸면 기준조건에 따라 값이 변하지 않는 문제가 발생합니다. 이럴경우 수식에 절대참조를 넣지 말아야 하는 부분이 있거나 하지 않는건가요?ㅜ_ㅜ
오빠두엑셀
오빠두엑셀 작성자 2020.01.15 01:04
안녕하세요~^^

공식을 아래와 같이 수정해보시겠어요?
P와 Q셀 참조를 열절대참조(알파벳 앞에만 $표시)로 이름정의범위를 생성합니다.
이후, 데이터유효성검사를 적용할 범위 선택후, 각 이름정의범위를 지정해보시겠어요?^-^

예제2_목록상자2
=OFFSET('다중조건_3단계이상~'!$I$2,MATCH('다중조건_3단계이상~'!$P2,'다중조건_3단계이상~'!$I$2:$I$100,0)-1,1,COUNTIF('다중조건_3단계이상~'!$I$2:$I$100,'다중조건_3단계이상~'!$P2),1)

예제2_목록상자3
=OFFSET('다중조건_3단계이상~'!$L$2,MATCH(1,--(('다중조건_3단계이상~'!$L$2:$L$100='다중조건_3단계이상~'!$P2)*('다중조건_3단계이상~'!$M$2:$M$100='다중조건_3단계이상~'!$Q2)),0)-1,2,COUNTIFS('다중조건_3단계이상~'!$L$2:$L$100,'다중조건_3단계이상~'!$P2,'다중조건_3단계이상~'!$M$2:$M$100,'다중조건_3단계이상~'!$Q2),1)
다중 데이터 유효성검사 목록상자 예제
무우쭝
무우쭝 2020.02.05 19:33
상세한 답변 감사드립니다:) 유튜브로만 오빠두엑셀님 구독하다가 , 뒤늦게 가입하고 감사 인사드리네요. 추운날씨 건강 챙기시고, 재능기부에 항상 감사드립니다!^^
BOLL
BOLL 2020.03.07 22:59
제가 여쭤봤던 부분이 이문제였습니다. 감사합니다
BOLL
BOLL 2020.03.07 23:57
선생님 저기 수정하신부분 예제 파일 좀 받을 수 있을까요??
BOLL
BOLL 2020.03.08 03:24
아 위에있네요~ 감사합니다.^^
창창한하루
창창한하루 2019.12.26 20:55
너무 도움 되는 내용이에요!!
하늬돌이
하늬돌이 2020.02.12 22:52
안녕하세요? 유효성검사에서 목록 형식으로 하면 셀에 하나의 값만 입력이 가능한데 혹시 복수 개의 값을 선택하고 입력하게 할 수 있는 방법이 없을까요?
VBA로 작성하는 방법까지 포함해서요.
오빠두엑셀
오빠두엑셀 작성자 2020.03.10 05:39
안녕하세요~^-^
아쉽게도 데이터유효성검사로는 '여러개 열'을 동시에 출력할 수 없습니다..ㅠ-ㅠ..
다만 대안책으로 셀1&셀2&셀3.. 으로 연결된 셀을 유효성검사목록으로 설정하시면,
셀1-셀2-셀3.. 이런식으로 목록이 출력되게 만드실 수는 있습니다 ^^
제 답변이 도움이 되셨길 바랍니다.
감사합니다!
조중현
조중현 2020.03.09 20:14
오빠두 선생님 정말 많은 도움이 되고 있습니다. 감사합니다.
그런데 예제화일을 참고하여 데이터 유효성을 만들어 보았는데
잘 실행이 되었습니다. 그런데 이렇게 잘 실행이 된 파일에서
저장하고 파일을 종료한뒤, 다시 실행을 하면 오류가 발생합니다.

그래서 데이터 유효성 창을 다시 활성화시키고,
아무런 수정사항도 없이 확인버튼만 누르면
오류가 사라지는 현상이 계속 반복됩니다.

그래서 양식을 사용할때마다 다시 확인버튼을 눌러야 하는
번거로움이 발생하고있습니다. 조언 부탁드립니다.
오빠두엑셀
오빠두엑셀 작성자 2020.03.10 05:37
안녕하세요~^^
어떤 오류 메세지가 출력되시나요?
좀 더 자세히 설명해줄 수 있으신가요?^-^
감사합니다!
진아 2030
진아 2030 2020.03.10 09:18
댓글! 감사합니다. !

잘 구현되던 파일을 저장 종료 후다시 실행하면
다중목록상자 중 3단계, 4단계, 5단계에 오류가 발생하여
실행이 되지 않고

데이터 유효성검사에서 잘못된 테이터를 클릭하면
빨간색 타원으로 체크됩니다.

그리고는 아무런 수정 없이
셀 상단의 첫번째 셀을 지정하고
테이터 유효성 창을 열고
ㅁ 변경내용을 설정이 같은 모든셀에 적용(P)를 체크하고
확인을 누르면 다시 정상 작동합니다.

해서 파일을 실행할때마다.
오류를 제거하는 절차를 반복해야 하는 번거로움이 있습니다.

어떻게 해야 하나요???
부탁드립니다. 간절히!!!

사진을 켑쳐하여 올려 볼려고 했지만
이리 저리 해보아요 방법이 없네요
컴을 잘다루지 못하는 저로써는....
오빠두엑셀
오빠두엑셀 작성자 2020.03.10 20:17
안녕하세요~^^
말씀만 들어서는 참조문제로 인해 파일을 재 실행할때마다 조건부서식을 다시 설정해주셔야 하는듯 보입니다.
수식에서, 상대참조로 입력된 값들을 모두 절대참조로 변경하고 다시 실행해보시겠어요?^^
=OFFSET(BD테이블!$J$4,MATCH(1,–((BD테이블!$J$4:$J$320=견적서!$B$15)*(BD테이블!$K$4:$K$320=견적서!$C$15)*(BD테이블!$L$4:$L$320=견적서!$D$15)),0)-1,3,COUNTIFS(BD테이블!$J$4:$J$320,견적서!$B$15,BD테이블!$K$4:$K$320,견적서!$C$15,BD테이블!$L$4:$L$320,견적서!$D$15),1)
감사합니다.
조중현
조중현 2020.03.10 12:49
참고로 제가 4번째 목록상자에 적용한 공식입니다.
한번 봐주세요

=OFFSET(BD테이블!$J$4,MATCH(1,--((BD테이블!$J$4:$J$320=견적서!B15)*(BD테이블!$K$4:$K$320=견적서!C15)*(BD테이블!$L$4:$L$320=견적서!D15)),0)-1,3,COUNTIFS(BD테이블!$J$4:$J$320,견적서!B15,BD테이블!$K$4:$K$320,견적서!C15,BD테이블!$L$4:$L$320,견적서!D15),1)
edward
edward 2020.03.18 00:12
안녕하세요 오빠두엑셀 통해 많은 도움 받고 있습니다 감사합니다!^^
피벗테이블 필드 설정에서 [항목 레이블 반복] 탭이 활성화가 안되어서 저는 클릭이 불가능합니다.
제가 놓친 부분이 있을까요?
오빠두엑셀
오빠두엑셀 작성자 2020.03.19 10:50
안녕하세요~^^
적어주신 내용만으로는 정확한 답변을 드리기 어려울듯 합니다.
MS홈페이지를 확인해보니, 피벗 테이블의 표시형식이 '테이블'형식이 아닐 경우 '항목레이블반복' 기능이 제공되지 않는다는 내용이 있습니다.
아래 링크를 확인해보시겠어요?^^
https://support.office.com/ko-kr/article/%ed%94%bc%eb%b2%97-%ed%85%8c%ec%9d%b4%eb%b8%94%ec%97%90%ec%84%9c-%ed%95%ad%eb%aa%a9-%eb%a0%88%ec%9d%b4%eb%b8%94-%eb%b0%98%eb%b3%b5-882bdb55-9cdc-4d8d-b531-8e96e41dea31?ui=ko-KR&rs=ko-KR&ad=KR
만약 위 방법으로도 해결이 안될경우 예제파일을 Q&A 게시판에 올려주시면 확인 후 회신하여 드리겠습니다.^^
감사합니다.
쥬쥬
쥬쥬 2020.03.19 20:11
안녕하세요 다중 목록에서 왜 ㅡmatch수식에 1을 넣어준건지 이해가 안되서요
오빠두엑셀
오빠두엑셀 작성자 2020.03.21 14:06
안녕하세요~^^
MATCH 함수로 TRUE(=1)인 경우를 검색합니다.
해당 공식의 동작원리는 이전 VLOOKUP 다중조건 공식에서 자세히 설명드린적이 있습니다.
아래 링크를 참고해보시겠어요?
www.oppadu.com/vlookup-함수-다중조건-검색/
감사합니다
우후대박
우후대박 2020.04.16 11:53
안녕하세요~
다중 유효성 검사 목록을 참고하여, 특정 범위의 데이터 추출을 학습하고 있습니다.
이름 관리자에 Offset, Match 함수를 통해 특정 위치의 범위를 지정하려고 하는데요.

= OFFSET (시작셀, MATCH(참조값, 찾을범위,0)-1, 1, COUNTIF(찾을범위,참조셀), 1)

위의 경우처럼 Match함수-1,다음에 X축에 1열 이동 하는 숫자 "1" 대신에 특정 수열
(저의 경우는 26번째 열부터 3의 배수 형태로 ...) 을 넣어서 매열마다 원하는 범위를 다르게 가져오고 싶은데,
가능한지 문의드립니다.

현재는 저는 계속 목록을 만들어서 (예를 들어 26번째 목록, 29번째 목록... ) 사용 중에 있는데,
작업을 할 수는 있으나, 노가다가 상당할꺼 같네요. ^^
조언 부탁드립니다!
오빠두엑셀
오빠두엑셀 작성자 2020.04.21 13:20
안녕하세요?^^
네 물론 가능합니다.
숫자 1 대신에 [ 26+COLUMN()*3 ] 과 같은 형태로,
상황에 맞춰 적절히 수정해서 사용해보시겠어요?^^
답변이 도움이 되셨길 바랍니다.
감사합니다.
우후대박
우후대박 2020.05.13 10:15
댓글 추가하기...와! 정말 편리합니다. 여지껏 해왔던 엑셀 노가다 작업이 허망하게 느껴지네요.
손만 빨라졌네요. 담부턴 손보단 머리를 써야 겠습니다.