Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

마이크로소프트 엑셀 자동 필터를 제거하는 다양한 방법을 제공합니다. 워크시트 에서 또는 Excel 표 이 기사에서는 7 에 대해 배울 것입니다. 자동 필터가 있는 경우 제거하는 방법 VBA 스크립트를 사용하여 Excel에서

다음 링크에서 엑셀 파일을 다운받아 함께 연습하실 수 있습니다.

VBA를 사용하여 Excel에 자동 필터가 있는 경우 이를 제거하는 7가지 예

1. 활성 워크시트가 있는 경우 자동 필터 제거

다음 스크린샷은 자동 필터 를 보여줍니다. 활성 워크시트에서 실행 중입니다. 이 자동 필터 를 제거합니다. VBA 사용 코드.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

자동 필터를 제거하려는 경우 활성 워크시트에서 다음 단계를 따르십시오:

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Public Sub RemoveAFActiveWorksheet()

  If ActiveSheet.AutoFilterMode Then
     ActiveSheet.AutoFilterMode = False
  End If

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 여기에 하위 절차 를 만들었습니다. 공개 하위 RemoveAFActiveWorksheet
  • 다음으로 IF 문을 사용했습니다. 존재하는 이 있는지 확인하기 위해 모든 자동 필터 존재하는 경우 자동 필터 가 제거됩니다. AutoFilterMode를 설정하면 거짓으로 .

활성 워크시트 로 돌아가기 ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 RemoveAFActiveWorksheet 를 선택합니다. 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 자동 필터 가 표시됩니다. 제거되었습니다. 모든 데이터가 표시됩니다. 지금.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

자세히 알아보기: 자동 필터가 켜져 있는지 확인하는 Excel VBA(4가지 쉬운 방법)

2. VBA를 사용하여 모든 워크시트에서 자동 필터 삭제

다음 그림을 보십시오. 자동 필터 를 볼 수 있습니다. 두 워크시트에 모두 적용됩니다. 이제 VBA를 작성하겠습니다. 자동 필터를 제거하는 코드 모든 워크시트에서 통합 문서에서 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

통합 문서의 모든 워크시트에서 자동 필터를 삭제하려면 아래 단계를 따르십시오:

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Public Sub DeleteAFfromallWorksheets()

  Dim xWs1 As Worksheet

  For Each xWs1 In ActiveWorkbook.Worksheets
   If xWs1.AutoFilterMode = True Then
      xWs1.AutoFilterMode = False
   End If
  Next xWs1

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 여기서 For 루프를 사용했습니다. 검색 자동 필터 각 워크시트에서
  • 다음으로 IF 문을 사용했습니다. 존재하는 이 있는지 확인하기 위해 존재하는 경우 자동 필터 가 제거됩니다. ActiveSheet.AutoFilterMode를 설정하면서 거짓으로 .

워크시트 로 돌아가기 ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 RemoveAFfromallWorksheets 를 선택합니다. 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 모든 자동 필터 아이콘이 제거됨이 표시됩니다. 모든 워크시트에서 통합 문서 에서 아래 그림과 같이:

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

3. 표의 단일 열에서 자동 필터 지우기

아래 그림에서 자동 필터 첫 번째 열에만 적용됩니다. 테이블의. 이 방법에서는 단일 열에서 자동 필터를 지우는 코드를 작성합니다. Excel의 표.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

그렇게 하려면

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

❸ 지금 복사 다음 VBA 코드.

Sub DeleteAFSingleColumnfromTable()

    Dim xWs1 As Worksheet
    Dim xTableName1 As String
    Dim xLT1 As ListObject

    xTableName1 = "TableA"
    Set xWs1 = Sheets("MyTable1")
    Set xLT1 = xWs1.ListObjects(xTableName1)
    xLT1.Range.AutoFilter Field:=1

End Sub

❹ 그 후 붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 먼저 변수 3개를 선언했습니다.
  • 그런 다음 테이블 이름을 삽입했습니다. 및 설정 시트 이름 .
  • 그 후 ListObjects 속성을 보이게 모든 콘텐츠 테이블 .
  • 마지막으로 입력 테이블 열 색인 자동 필터 필드 사용

워크시트 로 돌아가기 ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 RemoveAFSingleColumnfromTable 선택 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

그런 다음 자동 필터 가 표시됩니다. 첫 번째 열에 더 이상 존재하지 않습니다. 당신의 테이블.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

4. 테이블의 여러 열에서 자동 필터 제거

다음 그림은 두 개의 자동 필터 를 보여줍니다. 첫 번째 아이콘 및 두 번째 테이블의 열. 이 방법에 따라 자동 필터를 제거 할 수 있습니다. 두 개의 열 에서 테이블 VBA 사용 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 아래 단계에 따라 자동 필터가 여러 열에 있는 경우 자동 필터를 지웁니다. Excel 표에서

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Sub DeleteAFMultiColumnsfromTable()

    Dim xWs1 As Worksheet
    Dim xTableName1 As String
    Dim xLT1 As ListObject

    xTableName1 = "TableA"
    Set xWs1 = Sheets("MyTable1")
    Set xLT1 = xWs1.ListObjects(xTableName1)

    xLT1.Range.AutoFilter Field:=1
    xLT1.Range.AutoFilter Field:=2

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 먼저 변수 3개를 선언했습니다.
  • 그런 다음 테이블 이름을 삽입했습니다. 및 설정 시트 이름 .
  • 그 후 ListObjects 속성을 보이게 모든 콘텐츠 테이블 .
  • 마지막으로 입력 2개의 테이블 열 색인 자동 필터 필드 사용

❺ 이제 워크시트 로 돌아가십시오. ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 DeleteAFMultiColumnsfromTable 선택 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드를 실행하면 자동 필터 가 표시됩니다. 제거됨 여러 열에서

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

자세히 알아보기: [수정]:범위 클래스의 자동 필터 방법 실패(5개 솔루션)

5. Excel VBA를 사용하여 전체 테이블에서 자동 필터 지우기

자동 필터 가 있는 경우 아래 그림과 같이 테이블에 적용되고 제거하려는 그런 다음 이 방법을 따르십시오.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Sub RemoveAFfromEntireTable()

  Dim xWs1 As Worksheet
  Dim xTable1 As String
  Dim xTable2 As ListObject

  xTable1 = "TableB"
  Set xWs1 = ActiveSheet
  Set xTable2 = xWs1.ListObjects(xTable1)
  xTable2.AutoFilter.ShowAllData

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 먼저 변수 3개를 선언했습니다.
  • 그런 다음 테이블 이름을 삽입했습니다. 다음 설정 시트 이름 액티브시트로 .
  • 그 후 ListObjects 속성을 보이게 모든 콘텐츠 테이블 세트 를 사용했습니다. xTable2에 저장하는 문
  • 마지막으로 ShowAllData 속성을 사용하여 자동 필터를 끕니다. .

워크시트 로 돌아가기 테이블이 있는 상태에서 ALT + F11 누르기 매크로 열기 대화 상자.

매크로 RemoveAFfromEntireTable 선택 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 자동 필터 제거됩니다. 전체 테이블에서 아래 그림과 같이:

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

6. 존재하는 경우 암호로 보호된 워크시트에서 자동 필터 삭제

아래 그림에 표시된 다음 데이터세트에는 자동 필터가 활성화되어 있습니다. 비밀번호로 보호되어 있습니다. . 7878입니다. .

이 방법을 사용하면 VBA 코드가 생성됩니다. 지우다 out 자동 필터 비밀번호로 보호된 워크시트에서 이렇게.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 아래 단계를 따르십시오.

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Sub RemoveAFwithPass()

Dim UserPwd As String
UserPwd = "7878"

With ActiveSheet
    .Unprotect Password:=UserPwd
    .ShowAllData
    .Protect _
        Contents:=True, _
        AllowFiltering:=True, _
        UserInterfaceOnly:=True, _
        Password:=UserPwd
End With

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 먼저 변수를 선언했습니다 비밀번호를 입력합니다.
  • 그런 다음 ActiveSheet에서 , 사용자 비밀번호를 할당했습니다. 비밀번호 보호 해제
  • 사용된 ShowAllData 모든 것을 숨기기 해제하는 속성입니다.
  • 그런 다음 True 를 할당했습니다. 콘텐츠로 , 허용 필터링UserInterface만 보호 해제 모두.

암호로 보호된 워크시트 로 돌아가기 ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 RemoveAFwithPass 를 선택합니다. 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

그 후 자동 필터 제거됩니다. 모든 기록이 표시됩니다. 이렇게:

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

7. VBA를 사용하여 암호 없이 보호된 워크시트에서 자동 필터 제거

다음 그림은 보호된 데이터 세트 를 보여줍니다. 비밀번호 없이 . 이 방법에서는 자동 필터를 제거 하는 코드를 작성합니다. 암호 없이 보호된 워크시트.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

이제 아래 단계를 따르십시오.

❶ 먼저 ALT + F11을 누릅니다. VBA 편집기를 엽니다.

❷ 그런 다음 삽입 으로 이동합니다.>> 모듈 .

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

복사 다음 VBA 코드.

Sub RemoveAFwithoutPass()

With ActiveSheet
    .Unprotect
    .ShowAllData
    .Protect _
        Contents:=True, _
        AllowFiltering:=True, _
        UserInterfaceOnly:=True
End With

End Sub

붙여넣기 저장 VBA 편집기의 코드

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

코드 분석

  • 먼저 With ActiveSheet의 문 보호 해제 사용 잠금 해제할 속성
  • 그런 다음 ShowAllData 모든 것을 숨기기 해제하는 속성입니다.
  • 그런 다음 True 를 할당했습니다. 콘텐츠로 , 허용 필터링UserInterface만 모두 보호 해제합니다.

활성 워크시트 로 돌아가기 ALT + F11을 누릅니다. 매크로 열기 대화 상자.

매크로 RemoveAFwithoutPass 를 선택합니다. 실행 을 누르십시오. 버튼.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

마지막으로 자동 필터 삭제됩니다. 모든 데이터가 보이게 됩니다. 이렇게:

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

연습 섹션

제공된 Excel 파일의 끝에 다음 스크린샷과 같은 Excel 시트가 표시됩니다. 이 기사에서 논의된 모든 방법을 연습할 수 있는 곳입니다.

Excel VBA:자동 필터가 있는 경우 제거(예제 7개)

결론

요약하자면 7 자동 필터가 있는 경우 제거하는 방법 Excel에서 VBA를 사용합니다. 이 글과 함께 첨부된 연습문제집을 다운받아 모든 방법을 연습하시길 권장합니다. 그리고 아래의 댓글 섹션에서 주저하지 말고 질문하십시오. 우리는 모든 관련 쿼리에 최대한 빨리 응답하도록 노력할 것입니다. 그리고 Exceldemy 웹사이트를 방문하십시오. 자세히 알아보십시오.

관련 기사

  • Excel의 동일한 필드에 대해 여러 기준으로 자동 필터링하는 VBA(4가지 방법)
  • Excel에서 VBA를 사용하여 특정 값과 같지 않은 값을 자동 필터링하는 방법
  • VBA 자동 필터:작은 것부터 큰 것 순으로 정렬(3가지 방법)
  • Excel VBA로 보이는 행을 자동 필터링 및 복사하는 방법