[엑셀] VBA | 필터 해제하는 방법

엑셀의 필터 기능을 이용하면 특정 조건을 만족하는 데이터만 추려서 볼 수 있습니다. 예를 들어 다음과 같은 표가 있다고 할 때...

A열에 값이 1인 것만 보이도록 하면 다음처럼 나옵니다.

필터로 특정 행만 보이게 한 경우, 매크로로 시트의 데이터들을 합치는 등 어떤 작업을 할 때 문제가 생길 수 있습니다. 따라서 그 작업 전에 모든 값이 보이도록 하는 바꿔야 합니다.

다음은 매크로로 필터를 해제하는 방법입니다.(개발 도구 메뉴가 없다면 옵션에서 보이도록 변경합니다.)

매크로 작성

개발 도구에서 Visual Basic을 클릭합니다.

모듈을 삽입합니다.

다음 코드를 추가합니다.

Sub ShowAll()
    With ActiveSheet
        .Cells(1, 1).Select
        If .FilterMode = True Then
            .ShowAllData
        End If
    End With
End Sub

한 줄씩 해석하면...

 With ActiveSheet

활성화된 시트에 대하여

.Cells(1, 1).Select

A1 셀을 선태하고

If .FilterMode = True Then

표에 필터가 적용되어 있다면

.ShowAllData

필터를 해제(모든 데이터를 보이게) 합니다.

매크로 실행

코드 에디터에서 실행하거나...

[개발 도구]의 [매크로]를 클릭한 후 [실행]을 클릭하면...

모든 데이터가 나타납니다.

소프트웨어 구입 / 컨설팅 문의