VBA – 자동 필터 끄기/필터 지우기
In this Article
이 튜토리얼에서는 VBA에서 자동 필터를 끄거나 해제하는 방법을 설명합니다.
자동 필터는 VBA 코드를 사용하여 켜거나 끌 수 있습니다.
VBA의 활성 워크시트에서 자동 필터 끄기
다음 코드 예제는 활성 시트에서 자동 필터가 이미 해제되어 있는지 확인한 후, 자동필터가 활성화되어있을 경우 자동 필터를 해제합니다.
Public Sub KillFilter()
If ActiveSheet.AutoFilterMode Then
ActiveSheet.AutoFilterMode = False
End If
End Sub
VBA의 활성 워크시트에서 자동 필터 켜기
다음 코드 예제에서는 먼저 활성 시트에서 자동 필터가 설정되어 있지 않은지 확인하고 설정되어있지 않을 경우 자동 필터를 설정합니다.
Public Sub StartFilter()
If Not ActiveSheet.AutoFilterMode Then
ActiveSheet.Range("A1").AutoFilter
End If
End Sub
VBA의 모든 워크시트에서 자동 필터 해제하기
다음 코드 예제는 전체 통합 문서의 각 시트를 반복하여 현재 워크시트의 필터가 이미 설정되어 있지 않은지 먼저 확인하여 자동필터가 활성화 되어있을 경우 각 워크시트에서 자동 필터를 해제합니다.
Public Sub StopAllFilters()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If ws.AutoFilterMode = True Then
ws.AutoFilterMode = False
End If
Next ws
End Sub
VBA의 모든 워크시트에서 자동 필터를 설정하기
비슷한 방법으로 다음 코드 예제에서는 전체 통합 문서를 반복하여 현재 워크시트의 필터가 켜져 있지 않은지 확인하고 비활성화되어있을 경우 각 시트에서 자동 필터를 설정합니다.
Public Sub StartAllFilters()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If Not ws.AutoFilterMode Then
ws.Range("A1").AutoFilter
End If
Next ws
End Sub
VBA에서 활성 워크시트의 모든 필터 지우기
다음 코드 예제는 활성 시트에서 자동 필터를 설정한 상태로 유지하면서 데이터에 적용된 모든 필터를 지웁니다.
Public Sub ClearFilter()
If ActiveSheet.FilterMode = True Then
ActiveSheet.ShowAllData
End If
End Sub
VBA의 모든 워크시트에서 모든 필터 지우기
마찬가지로, 다음 코드 예제는 전체 통합 문서의 각 시트를 반복하여 자동 필터가 설정되어 있는 경우 자동 필터를 설정한 상태로 유지하면서 데이터에 적용된 모든 필터를 지웁니다.
Public Sub ClearAllFilters()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
If ws.FilterMode = True Then
ws.ShowAllData
End If
Next ws
End Sub
VBA에서 테이블의 모든 필터 지우기
워크시트에 테이블 개체가 포함된 경우 자동 필터를 켠 채로 해당 필터에 적용된 모든 필터만 지우도록 코드를 조정할 수 있습니다.
Sub ClearFilterFromTable()
Dim ws As Worksheet
Dim sTable As String
Dim loTable As ListObject
sTable = "Table1"
Set ws = ActiveSheet
Set loTable = ws.ListObjects(sTable)
loTable.AutoFilter.ShowAllData
End Sub
테이블 개체가 피벗 테이블에 연결되어 변경될 경우 피벗 테이블의 데이터도 새로 고침처리 됩니다.
간편한 VBA 코딩
온라인에서 VBA 코드를 더 이상 검색하지 않아도 됩니다. 초보자도 최소한의 코딩 지식으로 프로시저를 처음부터 코딩할 수 있습니다. 시간 절약이 가능하고 모든 사용자를 위한 VBA 코드 작성기인 AutoMacro에 대해 자세히 알아보세요!