Vídeo recomendado
https://youtu.be/diWPPPhW-9E

VBA -limpar filtro, sem remover

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
farias
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Qua Set 30, 2020 5:05 pm

VBA -limpar filtro, sem remover

Mensagem por farias »

Bom dia
Pesquisei nos tópicos e não achei nada do tipo.

Gostaria de uma ajuda para criar uma função em VBA para limpar os filtros de uma planilhas sempre ao fechar ou abrir esta, porem não quero remover a função filtro, apenas limpar os filtros existentes.

Eu achei essa solução em outro fórum, porém, essa função exclui os filtros, e eu quero apenas limpar ao sair ou abrir a planilha.

Código: Selecionar todos

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim ws As Worksheet
    For Each ws In Worksheets
        If ws.AutoFilterMode Then
            ws.AutoFilterMode = False
        End If
    Next ws
End Sub


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


farias
Acabou de chegar
Acabou de chegar
Mensagens: 3
Registrado em: Qua Set 30, 2020 5:05 pm

Re: VBA -limpar filtro, sem remover

Mensagem por farias »

Encontrei uma solução no site https://pt.extendoffice.com/documents/e ... kbook.html

Código: Selecionar todos

Sub Auto_Open()
'Updated by Extendoffice 20201113
    Dim xAF As AutoFilter
    Dim xFs As Filters
    Dim xLos As ListObjects
    Dim xLo As ListObject
    Dim xRg As Range
    Dim xWs As Worksheet
    Dim xIntC, xF1, xF2, xCount As Integer
    Application.ScreenUpdating = False
    On Error Resume Next
    For Each xWs In Application.Worksheets
        xWs.ShowAllData
        Set xLos = xWs.ListObjects
        xCount = xLos.Count
        For xF1 = 1 To xCount
         Set xLo = xLos.Item(xF1)
         Set xRg = xLo.Range
         xIntC = xRg.Columns.Count
         For xF2 = 1 To xIntC
            xLo.Range.AutoFilter Field:=xF2
         Next
        Next
    Next
    Application.ScreenUpdating = True
 
End Sub


paulotuca
Acabou de chegar
Acabou de chegar
Mensagens: 8
Registrado em: Qua Fev 24, 2021 8:43 am

Re: VBA -limpar filtro, sem remover

Mensagem por paulotuca »

Boa noite!

Eu gostaria de fazer um botão de limpar em meu VBA mais não estou conseguindo sera que pode me ajudar?


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder