새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


엑셀 데이터 유효성 부분일치 검색 - 목록상자 만들기

♨ 카랜더 일정 :
  • 링크

  • 첨부

  • 컨텐츠 정보

    본문

    데이터유효성 부분일치 검색 동작원리 이해하기

    강의 추천 영상 /// 엑셀의 기본 사용자 

    ISNUMBER + SEARCH 부분일치 검색공식

    ISNUMBER / SEARCH 부분일치 검색 공식의 동작원리는 아래 관련 포스트에서 단계별로 자세히 설명해 드렸습니다. 특정 단어 포함여부 검색을 하는 ISNUMBER/SEARCH 공식의 자세한 설명이 궁금하신 분은 아래 관련 링크를 참고하세요.

    IF/MAX 함수 + 확장범위 응용하기

     IF 함수와  MAX 함수 그리고  확장범위를 같이 응용하면, 특정 조건을 만족할 경우에 1씩 증가하는 순번이 출력되도록 만들 수 있습니다. 공식은 아래와 같습니다.

    =IF(조건,MAX($머릿글셀:머릿글셀)+1,0)

    위 공식에 사용된 확장범위에 대한 내용은 아래 관련 포스트에서 자세히 설명해드렸습니다.

    예를 들어, 아래 공식을 시트의 A2셀부터 아래방향으로 자동채우기 한다고 가정하겠습니다.

    =IF(ISEVEN(ROW()),MAX($A$1:A1)+1,0)
    1. A2셀인 경우 : =IF(ISEVEN(ROW()),MAX($A$1:A1)+1,0)
      ' ROW() 함수는 2를 반환, ISEVEN 함수는 TRUE를 반환합니다.
      ' MAX($A$1:A1) 으로 0이 계산됩니다. 따라서 MAX($A$1:A1)+1 은 1을 반환합니다.
      =IF(ISEVEN(ROW()),MAX($A$1:A1)+1,0)
      =IF(TRUE,0+1,0)
      =1
    2. A3셀인 경우 : =IF(ISEVEN(ROW()),MAX($A$1:A2)+1,0)
      ' ROW() 함수는 3을 반환, ISEVEN 함수는 FALSE를 반환합니다.
      ' -> 0을 반환하면서 마무리됩니다.
      =IF(ISEVEN(ROW()),MAX($A$1:A2)+1,0)
      =IF(FALSE,1+1,0)
      =0
    3. A4셀인 경우 : =IF(ISEVEN(ROW()),MAX($A$1:A3)+1,0)
      ' ROW() 함수는 4를 반환, ISEVEN 함수는 TRUE를 반환합니다.
      ' MAX($A$1:A3) 으로 1이 계산되며, MAX($A$1:A3)+1 은 2를 반환합니다.
      =IF(ISEVEN(ROW()),MAX($A$1:A3)+1,0)
      =IF(TRUE,1+1,0)
      =2
    ROWS 함수 + 확장범위 응용하기

     ROWS 함수와 확장범위를 응용하면 시작셀부터 아래 방향으로 1씩 증가하는 순번을 손쉽게 만들 수 있습니다. 동일한 원리로  COLUMNS 함수를 사용하면, 시작셀부터 오른쪽 방향으로 1씩 증가하는 순번을 만들 수도 있습니다.

    =ROWS($A$1:A1)
    '함수를 입력한 뒤 아래 방향으로 자동채우기 하면 1,2,3,4... 순번이 생성됩니다.
    =COLUMNS($A$1:A1)
    '함수를 입력한 뒤 오른쪽 방향으로 자동채우기 하면 1,2,3,4... 순번이 생성됩니다.
    COUNTIF 함수 동적범위 만들기

    이전 강의에서  OFFSET 함수와 COUNTA 함수를 사용한 동적범위를 알아봤습니다. 대부분의 경우는 OFFSET / COUNTA 동적범위를 사용할 수 있지만, '수식으로 반환되는 값이 빈칸인 값을 제외해야 할 경우' 에는 OFFSET / COUNTA 동적범위를 사용할 수 없습니다.

    COUNTA 함수는 겉으로는 '빈칸' 이지만 안에 수식이 입력되어 있으면 해당 셀을 개수에 포함합니다.

    따라서, 수식의 결과값으로 빈칸을 반환하는 셀을 동적범위에서 제외해야 할 경우에는 아래에 적어드린 OFFSET / COUNTIF 동적범위를 사용합니다.

    =OFFSET($시작셀,,,COUNTIF($범위,"*?")

    위 공식에서 사용된 "*?" 는 와일드카드입니다. "*?"를 조건으로 입력하면 '셀의 결과값으로 최소 한 글자를 포함하는 셀'을 선택하게 됩니다. 와일드카드에 대한 내용은 아래 관련 포스트에서 자세히 설명해 드렸습니다.

    데이터 유효성 부분일치 검색 목록상자 만들기 (365 이전버전)

    1. 예제파일의 [대한민국영화목록(ㄱ)-365이전] 시트로 이동합니다. E3셀에 검색할 단어를 입력합니다. 예제로 '가문'을 입력하겠습니다.

      데이터 유효성 검색할 단어 입력예제파일 E3셀에 검색할 단어를 입력합니다.
    2. B3셀에 아래 수식을 입력한 뒤, 아래 방향으로 자동채우기 합니다. 수식을 자동채우기 하면 영화제목에 '가문'을 포함할 경우 1씩 증가하는 순번이 반환됩니다.
      =IF(ISNUMBER(SEARCH($E$3,C3)),MAX($B$2:B2)+1,0)

      ISNUMBER SEARCH 부분일치 검색 공식수식을 입력하면 단어를 포함하는 제목 옆에 순번이 출력됩니다.
    3. 예제파일의 G3셀에 아래 수식을 입력한 뒤, 아래방향으로 넉넉하게 자동채우기 합니다. 예제로 G31셀까지 자동채우기 하겠습니다. 수식을 자동채우기하면 '가문'을 포함하는 영화 제목만 나열되는 것을 확인할 수 있습니다.
      =IFERROR(VLOOKUP(ROWS($G$2:G2),B:C,2,0),"")

      특정 단어 포함 목록특정 단어를 포함하는 영화 목록이 출력됩니다.
    4. E3셀에 검색할 단어를 변경합니다. 단어를 변경하면 해당 단어를 포함하는 영화제목만 목록으로 반환되는 것을 확인할 수 있습니다.

      단어 포함하는 목록 출력단어를 변경하면 나타나는 영화 목록도 변경됩니다.
    5. 동적범위를 생성합니다. [수식] - [이름관리자]로 이동하거나, 단축키 CTRL + F3 키를 눌러 이름관리자를 실행합니다. 이후 [새로만들기] 버튼을 클릭하여 아래와 같이 새로운 이름정의범위를 생성합니다. 사용된 동적범위의 동작원리는 영상강의에서 자세히 설명해드렸습니다.
      이름 : 유효성목록상자
      참조대상 : =OFFSET('대한민국영화목록(ㄱ)-365이전'!$G$3,,,COUNTIF('대한민국영화목록(ㄱ)-365이전'!$G$3:$G$31,"*?"))

      이름 정의 범위 만들기'유효성목록상자'라는 이름으로 이름정의범위를 생성합니다.
    6. 데이터유효성 목록 상자를 적용할 셀인 E3셀을 선택합니다. [데이터] - [데이터 유효성 검사]로 이동합니다. 제한대상은 '목록'으로 선택합니다.

      데이터 유효성 목록 생성데이터 유효성 검사로 목록을 적용합니다.
    7. '원본' 을 선택한 뒤, 키보드 F3키를 누르면 방금 전에 생성한 이름정의범위가 나타납니다. '유효성목록상자'를 선택합니다.

      데이터 유효성 목록 동적범위원본 범위로 '유효성목록상자' 이름 정의범위를 선택합니다.
    8. [오류메시지] 탭으로 이동한 뒤, '유효하지 않은 데이터를 입력하면 오류메시지 표시' 체크박스를 비활성화 합니다. [확인]을 눌러 종료합니다.

      데이터 유효성 유효하지 않은 데이터 입력 오류 메시지 표시오류메시지 표시를 비활성화 합니다.
    9. 데이터 유효성 부분일치 검색 목록상자가 완성되었습니다. 원하는 단어를 검색한 뒤, ALT +  를 입력하면 해당 단어를 포함하는 영화제목이 목록상자로 출력됩니다.

      데이터 유효성 부분일치 검색 목록 완성부분일치 검색 데이터 유효성 목록이 완성되었습니다.

    데이터 유효성 부분일치 검색 목록상자 만들기 (Microsoft 365 버전)

    Microsoft 365 버전 사용자는 FILTER 함수와 # 기호를 이용한 동적범위를 사용하여 아주 간단하게 부분일치 검색 목록상자를 만들 수 있습니다.

    1. 예제파일의 [대한민국영화목록(ㄱ)-365사용자] 시트로 이동합니다. D3셀에 검색할 단어를 입력합니다. 예제로 '결혼'을 입력하겠습니다.

      데이터 유효성 부분일치 단어 입력부분일치로 검색할 단어를 입력합니다.
    2. F3셀에 아래 수식을 입력합니다. 수식을 입력하면 '결혼'을 포함하는 영화제목이 동적배열로 반환됩니다.
      =FILTER(B3:B132,ISNUMBER(SEARCH(D3,B3:B132)))

      FILTER 함수 입력F3셀에 FILTER 함수를 입력합니다.
    3.  FILTER 함수 이외에도  UNIQUE 함수를 사용하여 고유값만 반환하거나,  SORT 함수를 사용하여 영화제목을 오름차순 또는 내림차순으로 정렬할 수도 있습니다.

      SORT 함수 정렬SORT 함수와 UNIQUE 함수를 같이 응용할 수도 있습니다.
    4. 데이터유효성 목록상자를 적용할 D3셀을 선택한 뒤, [데이터] - [데이터 유효성 검사]로 이동합니다. '제한대상은' 목록을 선택합니다. '원본'에는 아래 수식을 입력합니다. '#' 기호를 사용하면 배열로 반환된 범위를 동적으로 선택할 수 있습니다. (365 사용자)
      =F3#

      데이터 유효성 부분일치 동적범위# 기호를 이용한 동적범위를 목록상자에 적용합니다.
    5. [오류메시지] 탭으로 이동한 뒤, '유효하지 않은 데이터를 입력하면 오류메시지 표시' 체크박스를 비활성화 합니다. [확인]을 눌러 종료합니다.

      데이터 유효성 유효하지 않은 데이터 입력 오류 메시지 표시유효성 오류메세지 표시를 비활성화 합니다.
    6. 데이터 유효성 부분일치 검색 목록상자가 마무리 되었습니다. 이처럼 365 사용자는 아주 간단하게 목록상자를 생성할 수 있습니다.

      데이터유효성 부분일치 완료 365 버전데이터 유효성 부분일치 검색 목록이 완성되었습니다.

    넓은 범위에 부분일치 검색 목록상자 만들기 (Microsoft 365 버전)

    Microsoft 365 버전 사용자는  TRANSPOSE 함수 하나만 더 사용하면 부분일치 검색 목록상자를 넓은 범위에도 손쉽게 생성할 수 있습니다.

    1. 예제파일의 [대한민국영화목록(ㄱ)-넓은범위적용] 시트로 이동합니다. D3셀과 D4셀에 검색할 단어를 입력합니다. 예제로 '가문'과 '결혼'을 입력하겠습니다.

      데이터 유효성 부분일치 여러개예제파일의 D3, D4, D5... 셀에 검색할 단어를 입력합니다.
    2. F3셀에 아래 수식을 입력한 뒤, 아래 방향으로 자동채우기 합니다.
      =TRANSPOSE(FILTER($B$3:$B$132,ISNUMBER(SEARCH(D3,$B$3:$B$132))))

      데이터 유효성 부분일치 TRANSPOSE 함수TRANSPOSE 함수와 FILTER 함수 응용공식을 F3셀에 입력한 뒤 자동채우기 합니다.
    3. D3:D8 범위를 선택한 뒤, [데이터] - [데이터 유효성 검사]로 이동합니다. '제한대상은' 목록을 선택한 뒤, '원본'에는 아래 수식을 입력합니다.
      =$F3#

      %EC%9C%A0%ED%9A%A8%EC%84%B1-%EB%AA%A9%EB%A1%9D-%EC%83%81%EC%9E%90-%EB%8F%99%EC%A0%81%EB%B2%94%EC%9C%84-365%EB%B2%84%EC%A0%84.png
    [ 추가 정보 ... 더보기) ]
    뷰PDF 1,2



    office view

    관련자료

    댓글목록

    profile_image

    song님의 댓글

    no_profile song 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 아이피 (210.♡.202.222) 작성일

    잘보았습니다.

    목록

    새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


    • 일간 조회수
        • 게시물이 없습니다.
    • 주간 조회수
        • 게시물이 없습니다.
    • 월간 조회수


    Total 1,081 / 12 Page
    [ 갤럭시s 안드로이드 폰에서 루팅은 무엇인가? ]

    ♥ 출처 :http://mayoha.tistory.com/619\r\n\r\n안드로이드 폰에서 루팅은 무엇인가?\r\n아이폰에서는 탈옥(Jail…

    [ Windows7 에서 SAMBA공유 방법 ]

    Homepc.11q.kr\r\n=============================안녕하세요. 고객님Windows7 에서 SAMBA공유 방법을 …

    [ 시스템에 설치된 애드웨어/악성코드 분석 및 삭제요청하기 ]

    \r\n\r\n\r\n\r\nWindowexe.com\r\n프로세스 자료천국\r\n시스템에 설치된 애드웨어/악성코드 분석 및 삭제요청하기\r\n…

    [ 인터넷 접속속도가 지연될 경우,,,인터넷을 빠르게 ] 댓글 4

    인터넷 접속속도가 지연될 경우,,,인터넷을 빠르게 \r\n\r\n아래의 정보를 이용하여 설정 하였으나\r\n기본적인 저의 효과를 볼수 있었던것을…

    [ MKVToolNix -- Cross-platform tools for Matroska _비디오수리 /최신버전… ] 댓글 1

    영화가 끝기거나 소리가 나지 않는 영화 ts.mkv로 수리tvix영화 끝기는것 수리MKVToolNix 정보MKVToolNix는Linux, 기타 …

    [ Windows RT, 그리고 Windows 8 종류 ]

    Windows RT, 그리고 Windows 8\r\n\r\n윈도우 RT(Windows RT)는 윈도우8에서 가장 혼란스러운 버전이라고 할 수 있…

    [ EasyBCD 2.2.0.177 beta 한글‎ ]

    Homepc.11q.kr\r\n=============================Unique ::EasyBCD 2.2.0.177 beta 한글…

    [ windwos7 USB BOOTING 설치 DISK 간단히 만들기 ]

    \r\n\r\n\r\n\r\nwindows7 USB BOOTING 설치 DISK 간단히 만들기 \r\n\r\n\r\n\r\n글쓴이 : https…

    [ UltraMon 듀얼모니터의 좌우 화면 편하게 이동 빙법 ]

    \r\n\r\n\r\nUltraMon 듀얼모니터의 좌우 화면 편하게 이동\r\n\r\n\r\n\r\n프로그램 없이 간단하게 이동 (원도우키 + …

    [ 서버에서 pc로 복사속도 측정 ]

    ###\r\n\r\n■ https://11q.kr는 정보를 찾아 공유 합니다..\r\n■ https://11q.kr\r\n\n[이 게시물은 관리…

    [ [윈도우8.1] 사운드 스테레오믹스 추가하여 원도우 사운드 녹음하기 (곰녹음기/goldwave 이용 완벽) ]

    [윈도우8.1] 사운드 스테레오믹스 추가하여 원도우 사운드 녹음하기 (곰녹음기/goldwave 이용 완벽)는아래 사이트를 참조 설치및 저의 원도…

    [ 얼마전부터 마우스가 지멋대로 더블클릭되고 길게누르고있어야만 되고 드래그도 안되고 왼쪽마우스가 안되더군요 ]

    얼마전부터 마우스가 지멋대로 더블클릭되고 길게누르고있어야만 되고 드래그도 안되고 왼쪽마우스가 안되더군요네이버 지식에 검색해서 하라는대로 손바닥도…

    [ 네로버닝으로 nero burning rom으로 cd를 mp3로 변환 하기 ]

    네로버닝으로 nero burning rom으로 cd를 mp3로 변환 하기> 부가기능 >오디오 트랙저장 > cd 파일선택> …



    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-07-06 15:11:20

    오늘의 홈 현황


    • 현재 접속자♨ 648 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 6 명
    • 주간 가입자※ 18 명
    • 오늘 방문자 1,529 명
    • 어제 방문자 1,981 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,417,013 명
    • 전체 게시물※ 8,677 개
    • 전체 댓글수※ 24,843 개
    • 전체 회원수 11,092 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑