고급 필터는 엑셀 작업 시 자주 요구되는 선별 작업에 쓰이며, 고급 필터에 매크로를 활용해 오래 걸리는 작업을 단시간에 해결할 수 있습니다. 그렇기에 많은 사람들에게 필요한 엑셀 스킬 중 하나입니다. 처음에 배우는 시간만 투자한다면 이후에는 선별 작업을 고급 필터와 매크로를 통해 빠르고 간편하게 처리할 수 있습니다.
1. 고급 필터 & 매크로 만들기
1-1. 단추로 고급 필터 매크로 만들기
1-2. 다른 시트에 고급 필터 도출하기
1-3. 조건 범위 설정하기
1-4. 추가되는 데이터에 대한 고급 필터
2. 자동 필터
예시 시트
보통 이런 식으로 데이터가 주어지며, 선별 작업은 필요한 데이터만 골라내는 작업을 말합니다.
1. 고급 필터 & 매크로 만들기
임의의 도형을 만들어 필터 매크로를 지정할 것이며, 2x2 임의의 필터 조건을 도형 옆에 만들어 봤습니다.
1. [개발 도구]에서 [매크로 기록]을 누르고, 매크로 이름을 지정해줍니다.
2. [데이터]에서 [고급]을 클릭합니다.
3. [고급 필터] 창이 뜨고 현재 위치(B2)에 생성하려면 [현재 위치에 필터]를, 같은 시트의 다른 위치에 생성하려면 [다른 장소에 복사]를 체크해줍니다.
4. [목록 범위]는 주어진 표를, [조건 범위]는 아래에 생성해둔 임의의 2x2 조건 표를 지정해준 후 [확인]을 눌러줍니다.
5. [기록 중지]를 누르고 도형에 저번 시간에 배운 [매크로 지정]을 해줍니다.
매크로 기록 과정에서 고급 필터가 적용되어 다음과 같은 결과 데이터가 나옵니다.
이때 인천이면서 연구개발인 9번 ‘김치우’가 산출됩니다.
(원래 표로 바꾸려면 빠른 실행 도구에 있는 [지우기]를 클릭하면 되고, [지우기]를 누른 후에도 고급 필터 매크로 단추 사용이 가능)
조건을 바꿔서 매크로 실행
[조건 범위]인 담당부서를 영원지원으로 바꾸어, 도형을 클릭해 고급 필터 매크로를 실행하면 10번 ‘이환수’가 산출됩니다.
>> 이런 식으로 요구하는 조건에 해당하는 데이터를 산출함으로써 업무를 빠르고 정확하게 처리할 수 있게 됩니다.
1-1. 단추로 고급 필터 매크로 실행하기
도형과 마찬가지로 단추에 매크로를 지정하는 방식입니다.
단추 매크로는 생성과 동시에 매크로 지정창이 뜨므로, 도형에 비해 비교적으로 간편합니다.
1-2. 고급 필터를 다른 시트에 결과 도출하기
고급 필터 결과를 다른 시트에 출력하려면 VBA에서 해당 매크로를 변경해야 가능합니다.
(고급 필터는 시트 간 이동이 제한됨)
빨간색 네모 표시한 부분을 수정 및 추가 해주면 다른 시트에 필터링된 값이 출력됩니다.
Inplace를 copy로 변경, copytorange:=Sheets("시트명”).Range("저장할 셀의 위치”),를 삽입해주면 원하는 시트의 원하는 셀에 결과 값이 도출됩니다.
이러한 명령어는 외우기보다는 매번 검색해서 쓰는 것이 낫습니다. (자주 쓰지 않아서)
근무지가 인천이면서 담당부서가 영업지원인 조건의 고급 필터를 실행하면, Sheet3에 10번 ‘이환수’가 출력됩니다.
(단점은 필터링할 때마다 이전 결과 데이터를 깨끗이 지워줘야 작동)
1-3. 조건 범위 설정
필터 조건은 여러 가지의 조건이 AND 또는 OR 의 형태로 만들어야 합니다.
같은 줄 = AND / 다른 줄 = OR 이라고 생각하면 됩니다.
인천과 생산기술을 다른 행에 둠으로써 엑셀은 OR이라고 인식합니다.
도형에 고급 필터 매크로를 지정한 뒤 실행하면, 다음과 같은 결과 데이터가 나옵니다.
(근무지가 인천이거나 담당부서가 생산기술인 사람을 필터)
1-4. 추가되는 데이터에 대한 고급 필터
기존 데이터 뿐만 아니라 작업 시 추가되는 데이터에 대한 필터링을 할 때가 있는데, 데이터가 추가될 때마다 매크로를 변경하기 보다는 기존 매크로를 미리 바꿔줌으로써 이러한 번거로움을 줄일 수 있습니다.
(주의 : 기존 데이터는 중간에 공백이 없어야 한다)
시작 셀인 ‘B2’만 남겨두고 뒤에 CurrentRegion. 을 추가하면 ‘B2’셀 아래로 공백 셀이 나올 때까지의 데이터를 인식합니다.
이렇게 되면 이후에 추가되는 데이터들에 대한 필터링도 기존 매크로를 통해 작업할 수 있게 됩니다.
VBA를 수정한 후, 16번 라상기 행을 추가해봄으로써 고급 필터가 추가되는 데이터에 대한 작업을 수행할 수 있는지 확인해보려고 합니다.
데이터를 추가했음에도 기존 매크로를 통해 다음과 같은 결과를 도출했습니다.
2. 자동 필터
기존 데이터 위에 원하는 조건을 바로 표시하고 싶다면 자동 필터를 사용합니다.
기존 표를 드래그로 선택하고, [홈] 텝에서 [정렬 및 필터] – [필터(F)] 로 실행합니다.
고급 필터처럼 [데이터] 텝에서 [필터] 로 실행해도 됩니다.
원하는 조건을 체크로 선택할 수 있습니다.
이상으로 선별 작업에 자주 쓰는 간단한 스킬인 고급 필터 + 매크로와 자동 필터 에 대해 알아봤어요.
이 글이 엑셀 작업 과정에서 도움이 되길 바랍니다. 감사합니다.
관련글
엑셀(Excel)에서 자주 쓰는 함수 정리 1편 (SUM, SUMIF, AVERAGE, COUNTA)
엑셀(Excel)에서 자주 쓰는 함수 정리 2편 (COUNTIFS, VLOOKUP, CONCATENATE, IF)
엑셀(Excel)에서 자주 쓰는 함수 정리 3편 (SEARCH, FIND, SUBSTITUTE, MATCH, INDEX)
엑셀(Excel)에서 자주 쓰는 함수 정리 4편 (TODAY, RANK, SLOPE, INTERCEPT)
직장/연구실에서 쓰는 기초적인 필수 엑셀(Excel) 함수 3개로 모든 업무 처리하기
반복 업무 필수 스킬!! 엑셀(Excel) 매크로?! (직장/연구실)
'Office Tips' 카테고리의 다른 글
제 0강. 오리진(Origin)이란? (0) | 2022.05.03 |
---|---|
엑셀 스킬 - 정렬 및 부분합 (0) | 2022.02.09 |
반복 업무 필수 스킬!! 엑셀(Excel) 매크로?! (직장/연구실) (0) | 2022.01.06 |
엑셀(Excel)에서 데이터를 선형, n차 근사 및 피팅 값 구하기(slope, intercept, index, linest) (3) | 2022.01.03 |
직장/연구실에서 쓰는 기초적인 필수 엑셀(Excel) 함수 3개로 모든 업무 처리하기 (2) | 2021.10.29 |
댓글