Como verificar se um filtro é aplicado em uma planilha no Excel?
Para uma planilha contém uma grande quantidade de dados, é possível verificar se a filtragem é aplicada em uma determinada coluna ou na planilha inteira sem verificar manualmente as colunas uma a uma? Neste tutorial, mostraremos dois códigos VBA para lidar com essa tarefa.
Verifique se um filtro é aplicado em uma determinada coluna
Verificar se um filtro é aplicado em uma planilha
Verifique se um filtro é aplicado em uma determinada coluna
Para verificar se uma determinada coluna está filtrada, o código VBA nesta seção pode fazer um favor.
1. Abra a planilha que deseja verificar se existe algum filtro aplicado em determinada coluna.
2. aperte o outro + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
3. No Microsoft Visual Basic para Aplicações janela, clique em inserção > Móduloe, em seguida, copie o seguinte código VBA na janela Módulo (Código).
Código VBA: verifique se uma coluna especificada é filtrada
Sub IsFilter()
'Updated by Extendoffice 20221025
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
xColumn = 3 'Here the number 3 stands for the third column (column C) in the current worksheet
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On And xAF.Range(1, xFNum).Column = xColumn Then
xBol = True
End If
Next xFNum
If xBol Then
MsgBox "The specified column is filled"
Else
MsgBox "The specified column is not filled"
End If
End Sub
Note: No código VBA, o número 3 nesta linha "xColuna = 3” representa a terceira coluna na planilha atual. Se você quiser verificar se um filtro é aplicado em coluna E, altere o número 3 para 5.
4. aperte o F5 chave para executar o código.
Se a coluna especificada for filtrada, a seguinte caixa de diálogo será exibida.
Caso contrário, você obterá a seguinte caixa de diálogo.
Verificar se um filtro é aplicado em uma planilha
Se você deseja verificar se um filtro foi aplicado em uma planilha, tente o código VBA nesta seção.
1. Abra a planilha que você deseja verificar se um filtro foi aplicado.
2. aperte o outro + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.
3. No Microsoft Visual Basic para Aplicações janela, clique em inserção > Móduloe, em seguida, copie o seguinte código VBA no Módulo (Código) janela.
Código VBA: Verifique se um filtro é aplicado em uma planilha
Sub IsFilterInWorkSheet()
'Updated by Extendoffice 20221024
Dim xWSht As Worksheet
Dim xFNum As Integer
Dim xBol As Boolean
Dim xAF As AutoFilter
Dim xColumn As Integer
Set xWSht = Application.ActiveSheet
Set xAF = xWSht.AutoFilter
xBol = False
On Error Resume Next
For xFNum = 1 To xAF.Filters.Count
If xAF.Filters(xFNum).On Then
xBol = True
Exit For
End If
Next xFNum
If xBol Then
MsgBox "Filter is applied in the curren worksheet"
Else
MsgBox "Filter does not apply in the current worksheet"
End If
End Sub
4. Então aperte F5 chave para executar este código, se a planilha contiver filtragem, você obterá uma caixa de diálogo como a seguir.
Caso contrário, você obterá a seguinte caixa de diálogo.
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!