본문 바로가기
■ 칼퇴를 위한 VBA : 사례/- VBA for 엑셀

VBA로 엑셀 데이터 필터링 및 복사 자동화하기

by 포탈메이커 2023. 7. 28.

VBA로 엑셀 데이터 필터링 및 복사 자동화하기

VBA(Visual Basic for Applications)는 마이크로소프트 엑셀에서 사용되는 프로그래밍 언어로, 엑셀 작업을 자동화하고 효율적으로 처리할 수 있게 해준다.

이번 포스팅에서는 VBA를 사용하여 엑셀 데이터 필터링 및 복사 작업을 자동화하는 방법에 대해 알아보겠다.

 

칼퇴키트, 업무용 도구모음

칼퇴를 위해 꼭 필요한 도구 모음을 제공합니다. 당장의 업무에 필요한 순간 사용하는 가벼운 메모장, 계산기, 변환기 등

portalmaker.backtohome.kr

 

1. 필터링 기능 활용하기

VBA를 사용하여 엑셀 데이터를 필터링하는 방법은 매우 간단하다. 다음과 같은 절차를 따라가면 된다.

  1. 필터링을 적용할 열을 선택한다.
  2. 필터링 기능을 활성화한다.
  3. 원하는 조건에 따라 필터를 설정한다.
Sub FilterData()
    Dim ws As Worksheet
    
    ' 현재 활성화된 시트 선택
    Set ws = ActiveSheet

    ' 필터 적용
    ws.Range("A1").AutoFilter Field:=1, Criteria1:="조건"
End Sub

위의 코드에서 "A1"은 필터링을 적용할 열의 첫 번째 셀을 나타낸다. Field는 필터링을 적용할 열의 인덱스를 나타내며, Criteria1은 필터링 조건을 나타낸다. 이를 원하는 대로 변경하여 사용할 수 있다.


2. 필터된 데이터 복사하기

필터링된 데이터를 다른 시트나 다른 워크북으로 복사하는 작업도 VBA를 사용하여 자동화할 수 있다. 다음은 필터링된 데이터를 다른 시트로 복사하는 예시이다.

Sub CopyFilteredData()
    Dim ws As Worksheet
    
    ' 현재 활성화된 시트 선택
    Set ws = ActiveSheet

    ' 필터된 데이터를 다른 시트("FilteredData")로 복사
    ws.AutoFilter.Range.Copy Destination:=Sheets("FilteredData").Range("A1")
End Sub

위의 코드에서 "FilteredData"는 복사할 데이터를 붙여넣을 시트의 이름을 나타낸다. 복사할 데이터의 범위를 원하는 대로 수정하여 사용할 수 있다.


3. 자동화된 작업 실행하기

위에서 작성한 VBA 코드를 자동화된 작업으로 실행하려면 다음과 같은 절차를 따라야 한다.

  1. 엑셀을 실행한다.
  2. "개발" 탭에서 "Visual Basic"을 선택한다.
  3. "삽입" 메뉴에서 "모듈"을 선택한다.
  4. 새로운 모듈을 생성하고, 위에서 작성한 VBA 코드를 복사하여 붙여넣는다.
  5. 엑셀 시트에서 자동화된 작업을 수행하고 싶은 시점에서, "개발" 탭에서 "매크로"를 선택한다.
  6. "매크로" 대화 상자에서 원하는 이름을 입력하고, "만들기"를 클릭한다.
  7. "매크로" 대화 상자에서 생성한 매크로를 선택하고, "실행"을 클릭한다.

위의 절차를 따르면 작업을 수행할 때마다 매크로를 실행하여 VBA 코드가 자동으로 실행되도록 할 수 있다.


4. 결론

VBA를 사용하여 엑셀 데이터 필터링 및 복사 작업을 자동화하는 방법에 대해 알아보았다. 필터링 기능 활용과 데이터 복사, 그리고 작업의 자동화 방법을 정리하여 보았으며, 이를 통해 엑셀 작업을 효율적으로 처리할 수 있게 되었다. VBA를 활용하여 다양한 엑셀 작업을 자동화할 수 있으니, 필요한 작업이 있다면 VBA를 공부하고 활용해보는 것을 추천한다.



포스팅이 도움이 되셨다면 구독, 공감, 댓글 부탁드려요!

행복한 하루 되세요!