매크로와 고급필터.xlsx

데이터 검색 완성1.xlsm

 

 

실습 1

엑셀 데이터 자동 검색 실습 1 (옵션단추, 고급필터, 매크로) by Y

 

 

 

지난 실습에 이어서 매크로와 고급필터 기능을 추가하여 데이터가 자동으로 검색되도록 해보자. 지난 실습에서는 옵션 단추를 클릭하면 [B6] 셀에 해당하는 부서명이 입력되는 데까지 완성하였다. '매크로와 고급필터.xlsx' 첨부 파일 또한 여기까지 완성된 파일이고, '데이터 검색 완성1.xlsm' 파일은 데이터 검색하는 과정까지 완성된 파일이다. 다운받아 실습해보고 완성 파일과 비교해보자. 물론 실습 1부터 따라해왔다면 본인이 작업한 파일로 이어서 작업해도 된다.

 

 

고급 필터는 명령을 클릭하여 매번 실행하는 기능이므로 자동으로 필터가 되도록 하려면 반복 실행 기능인 매크로와 병행하여 사용해야 한다.

매크로와 고급필터에 대하여 잘 모른다면 다음 글을 참조하자.

엑셀 매크로 실습 (데이터를 원하는 위치로 이동하기) by Y

고급필터로 데이터 추출하기 (고급필터 조건 작성법) by Y

 

 

 

데이터를 자동으로 검색하는 매크로를 만들어 버튼에 지정하기

 

 

 

1. 매크로를 만들기 위해 [개발 도구]-[매크로 기록] 명령을 클릭한다.

 

 

 

 

2. [매크로 기록] 대화 상자가 나타나면 매크로 이름을 '데이터검색'으로 입력한 후 [확인] 버튼을 클릭한다. [확인] 버튼을 클릭하고 난 후의 모든 키보드와 마우스 동작이 기록되므로 조심해야 한다.

 

 

 

 

3. 고급 필터 작업을 매크로에 저장하기 위해 [데이터] 탭의 [정렬 및 필터]-[고급] 명령을 클릭한다.

 

 

 

 

4. [고급 필터] 대화 상자가 나타나면 '목록 범위'에는 [B8:H15] 범위를 지정하고, '조건 범위'에는 [B5:B6] 범위를 지정한 후 [확인] 버튼을 클릭한다.

 

 

 

 

5. 'B5:B6' 범위를 조건으로 받아들여 고급 필터가 실행되어 표에서 영업4부에 해당하는 데이터만 검색된다.

 

 

 

 

6. 고급 필터가 완료되었으므로 매크로 기록을 중지하기 위해 [개발 도구] 탭[기록 중지] 명령을 클릭한다. 매크로에서 기록 중지는 잊어먹기 쉬운 과정이므로 잊지 말고 실행하자.

 

 

 

 

7. 매크로는 단축키에 지정할 수도 있지만, 도형이나 컨트롤의 단추에 지정하여 버튼을 눌러 실행할 수도 있다. 여기에서는 [개발 도구]-[컨트롤]-[단추] 명령을 클릭한다.

 

 

 

 

8. 시트에서 임의의 자리에 단추를 드래그하여 그리면 [매크로 지정] 대화 상자가 자동으로 나타난다. 방금 전에 만든 '데이터검색' 매크로를 클릭하여 선택한 후 [확인] 버튼을 클릭한다.

 

 

 

 

9. 텍스트를 변경하기 위해 드래그한다.

 

 

 

 

10. '검색' 텍스트를 입력하고 임의의 셀을 클릭하여 편집을 완료한다.

 

 

 

 

11. 부서를 변경하여 검색하기 위해 옵션 단추 중에서 '영업3부' 옵션 단추를 클릭한다.

 

 

 

 

12. [검색] 버튼을 클릭하면 '영업3부'에 해당하는 데이터만 검색된다.

 

 

같은 방법으로 '영업1부'~'영업4부'의 데이터를 모두 검색해볼 수 있을 것이다.

 

 

다음 글에서는 검색된 데이터를 필터를 해제하여 모두 표시되도록 하는 작업을 연습해보자.

 

이어지는 다음 실습

엑셀 데이터 자동 검색 실습 3 (옵션단추, 고급필터, 매크로) by Y

 

 

동영상 강좌 보기

 

 

 

 

 

 
 
 
 
Posted by 두여자 Y&S

댓글을 달아 주세요

  1. 순이

    안녕하세요. 부서가 바뀌지 않습니다.. 알면 활용하기 좋을것 같은데 ..

    2013.04.06 16:29 [ ADDR : EDIT/ DEL : REPLY ]
    • 너무 글이 길어져서 3개로 나눠서 작성했기 때문에 부서가 바뀌는 내용은 앞 글에 작성해놨습니다.

      2013.04.07 01:45 신고 [ ADDR : EDIT/ DEL ]
  2. 순이

    안녕하세요. 3개로 나누어져서 첫번째는 그대로 했는데 두번째거 부터 매크로 그대로 따라했는데 변하지가 않아서요 ..

    2013.04.07 10:49 [ ADDR : EDIT/ DEL : REPLY ]
    • 매크로 만드실 때 고급필터가 제대로 실행되는지 확인해보세요.
      목록범위하고 조건범위만 맞으면 잘 될거예요~^^

      2013.04.07 18:03 신고 [ ADDR : EDIT/ DEL ]
  3. 정훈

    안녕하세요. 다름이 아니라 B6셀에 직접 부서이름을 입력해서 검색되도록 하는 방법이 없을까요?

    2013.04.09 09:23 [ ADDR : EDIT/ DEL : REPLY ]
    • 직접 부서 이름을 입력한 후 매크로로 고급필터가 자동으로 되도록 하는 거 말씀이신가요? 그럼 B6셀에 데이터 유효성 검사를 사용해서 데이터를 선택할 수 있도록 한 뒤에 똑같이 매크로로 고급필터를 사용하시면 됩니다.
      데이터 유효성 검사는 '엑셀 데이터 유효성 검사 실습 (조건부 서식 자동으로 지정하기) by Y' 글을 참조하시면 나옵니다.

      2013.04.09 09:49 신고 [ ADDR : EDIT/ DEL ]
  4. 평안

    좋은정보 자료 강의 고맙습니다.. 그저 잘 배우고 가요..

    2013.05.17 15:27 [ ADDR : EDIT/ DEL : REPLY ]
  5. 이힝

    옵션이 4개가 있는데요 네번째 옵션을 선택하면 첫번째것과 같이 옵션이 선택되어 4번째 것은 검색이 되지 않습니다.
    .ㅜㅜㅜㅜㅜㅜ왜그런것일까요?

    2013.05.23 16:12 [ ADDR : EDIT/ DEL : REPLY ]
    • 먼저 4번째 옵션을 선택했을 때 4가 표시되는지 확인해보세요.
      4가 제대로 표시된다면 choose 함수 부분이 제대로 입력되지 않아서입니다. 앞의 글에 choose 함수 입력 부분을 확인해보심 될 거 같아요^^

      2013.05.23 16:18 신고 [ ADDR : EDIT/ DEL ]
    • 이힝

      4가 표시가 되지 않습니다.
      CHOOSE 함수의 Value값을 제대로 넣은것 같은데..ㅜㅜ

      2013.05.23 16:20 [ ADDR : EDIT/ DEL ]
    • 4가 표시되지 않는다면 choose 함수 이전에 옵션단추 문제입니다.
      옵션단추 만들기와 그룹 만드는 과정을 처음부터 다시 해보세요.
      그래도 해결이 안된다면 위에 첨부한 파일을 다운받아서 확인해보세요.
      그리고 뭐가 문제인지 찾아봐야할 것 같네요

      2013.05.23 17:59 신고 [ ADDR : EDIT/ DEL ]
  6. O_O

    안녕하세요. ^^
    며칠전부터 자동검색 포스팅을 보고 응용중입니다.
    다름이 아니라,
    위에 포스팅한 글은 하나의 조건만(영업x부) 검색하는 것이자나요?
    만약 '영업부+이름' 등 and 조건으로 검색하는 방법이 있을까요?
    영업부와 이름 각각의 버튼은 생성했는데, 두가지 조건을 넣어 통합검색으로 만들지 못하고 있네요.
    조언 부탁드려요 ^^

    2013.05.31 11:51 [ ADDR : EDIT/ DEL : REPLY ]
    • 각각 옵션단추를 만들어 두개 모두 글자가 표시된다면 고급필터로 통합검색이 가능합니다.
      고급필터 조건은 'http://yslife.tistory.com/338' 글을 참조하시면 조건 작성 방법이 나와있으니 참조하세요^^

      2013.05.31 13:06 신고 [ ADDR : EDIT/ DEL ]
  7. 훈훈

    오... 덕분에 됬습니다. 그런데 3가지 조건으로 검색하려는데, 예를 들어서 1번 조건은 같은것이 없고 2번 3번 경우 중복되는 검색이 있는데 예를들어서 2번3번이 같은경우가 있는것을 검색하면 1번을 다르게 고쳐써도 2번3번은 안지워지는데요. 이런걸 함수로만 검색되도록하는것도 될까요?

    2013.07.29 14:02 [ ADDR : EDIT/ DEL : REPLY ]
    • 조건마다 '전체'라는 옵션(5값)을 추가하고
      '=choose(b4, "영업1부","영업2부","영업3부","영업4부","") '
      로 함수식을 만들어주면, '전체'를 선택할 경우에는 조건부분이 공백으로 비워지게 되고, 그럼 그 조건은 무시됩니다.
      조건이 지워진다는 걸 이런식으로 해결하면 될 듯하네요^^
      좋은 하루 되세요~

      2013.07.29 15:33 신고 [ ADDR : EDIT/ DEL ]
  8. 고수녀

    봐도봐도 어려운것 같아요 ㅠㅠ 언제 님처럼 고수가 될까요 ㅠㅠ

    2014.03.05 20:42 [ ADDR : EDIT/ DEL : REPLY ]
    • 원래 기본이 튼튼해야 응용도 쉬워지니까 이 글이 어려우시다면 엑셀 기본서를 먼저 확실히 공부하신 후에 응용하기에 도전하시는게 좋을 듯 싶어요^^ 힘내세요~!!

      2014.03.05 21:19 신고 [ ADDR : EDIT/ DEL ]
  9. 김영훈

    엑셀 데이터 자동검색하는거 질문이 있습니다.
    셀안에 여러가지 단어중 그 특정단어만 추출하는방법.... 그리고 행전체에 문자나 숫자가 있는경우 그걸 추출하는방법이 알고 싶은데 도움을 구하고 싶습니다 좀 도와주세요 ㅠㅠ 혹시 네이트온으로 대화가 가능할까요? ㅠ
    tlrdl741@nate.com 입니다 ..

    2014.11.25 16:29 [ ADDR : EDIT/ DEL : REPLY ]
    • 말씀하신 두 가지 중에 첫번째는 http://yslife.tistory.com/259 글을 참조하시면 될거 같구요.
      두번째는 vlookup 함수나 lookup, hlookup 등의 찾기참조함수를 활용하시면 됩니다.
      좋은 하루되세요^^

      2014.11.26 10:15 신고 [ ADDR : EDIT/ DEL ]
  10. 길가면보이는 인간

    와 정말 감사해요ㅠㅠㅠ
    매크로 알기만 했지 처음으로 응용해봤어요ㅠㅠㅠ
    근데 필터되지 않은 전체표를 다시 볼려면 어떻게 해야하나요?
    그리고 옵션박스 대신 체크박스로도 할 수있나요? 여러조건으로도 검색 할 수 있게요.
    다시 한번 고맙습니다.

    2016.01.03 15:49 [ ADDR : EDIT/ DEL : REPLY ]
  11. 돌이

    강좌 감사합니다.

    위의 내용에서 검색한 결과의 행번호가 9~15번 까지 있는데,
    예를 들어서 검색 결과가 13번 이관우만 검색되었을때(또는 13, 14 번이 검색되었을때) 이 상황에서

    검색된 결과의 첫번째 행 번호를 알수 있는 방법이 궁금합니다.

    답변 부탁드려요

    2016.01.14 14:27 [ ADDR : EDIT/ DEL : REPLY ]
  12. HenryRyu

    잘 따라해서 멋진 DB검색기를 만들었습니다.

    감사합니다!

    2016.12.15 15:09 [ ADDR : EDIT/ DEL : REPLY ]
  13. vspeedhee

    책을 사서 보고 있는데 기본이 충실하지 않은 관계로 어렵더라구요 하지만 요거는 잘 따라서 할 수 있게 잘 되어있네요 감사합니다^^

    2017.01.18 00:13 [ ADDR : EDIT/ DEL : REPLY ]
  14. kim

    안녕하세요~ 글 정말 잘 보고 갑니다! 궁금한 것이 있는데요
    위 기능으로 Sheet2, Sheet3, Shee4 ... 에 있는 통합문서 내 모든 자료들을 Sheet1 에 저렇게 화면띄워놓고 Sheet1 에서 검색 버튼 누르면 거기에 바로 자료가 뜰 수 있게도 가능한가요?

    2017.05.17 16:04 [ ADDR : EDIT/ DEL : REPLY ]
  15. 가비

    2가지 문의드립니다.
    1. 검색어를 직접 입력했을 때 검색이 되도록 하고 싶은데, 목록으로 만들고 싶지는 않습니다. 사용자가 직접 입력하도록
    2. 검색어칸에 아무것도 입력되지 않은 상태에서 검색버튼을 누르면 전체 data가 나오는데, data가 안나오도록 하고 싶습니다.

    다수의 사람들에게 각각 특정 구분자를 주고, 해당 구분자를 입력했을 때 해당 data만 보이도록 하기 위한 것입니다.
    도와주세요~~

    2017.07.01 18:21 [ ADDR : EDIT/ DEL : REPLY ]