Como filtrar automaticamente linhas com base no valor da célula no Excel?
No Excel, a função Filtro padrão oferece uma maneira rápida de filtrar dados com base em critérios que você seleciona manualmente. No entanto, em alguns fluxos de trabalho, você pode querer que seus dados sejam atualizados automaticamente assim que você inserir um valor ou condição em uma célula específica. Por exemplo, se você deseja que o conjunto de dados seja filtrado instantaneamente com base em uma palavra-chave ou parâmetro que você insere em outra célula, isso vai além das capacidades nativas de filtragem do Excel. Esse tipo de filtro dinâmico ou “auto-filtro” pode ajudar a simplificar o processo de revisão de dados, reduzir o tempo gasto com filtros manuais e aumentar a precisão ao vincular as condições de filtro diretamente aos valores das células. Se você está pensando em implementar esse mecanismo de auto-filtragem com base na entrada de células, várias soluções práticas estão disponíveis para alcançar esse resultado.
Filtrar automaticamente linhas com base no valor da célula com uma solução de fórmula no Excel
Filtrar automaticamente linhas com base no valor da célula digitado com código VBA
Filtrar automaticamente linhas com base no valor da célula com uma solução de fórmula no Excel
Se você preferir uma abordagem sem macros ou precisar evitar o uso de VBA devido a configurações de segurança ou preocupações de colaboração, pode criar um efeito de "autofiltro" usando uma combinação de fórmulas e recursos de filtragem embutidos no Excel. Essa solução funciona bem para Microsoft 365, Microsoft 2019 e versões posteriores que suportam funções de matriz dinâmica, como FILTER
. É especialmente adequada para compartilhar com colegas que podem não ter macros habilitadas ou para modelos leves onde a automação sem instalação é necessária.
1. Selecione uma célula em branco onde você deseja que seus resultados filtrados comecem (por exemplo, coloque o cursor na célula G2).
=FILTER(A2:C20, (A2:A20=E1) * (B2:B20=E2), "No match")
2. Após inserir a fórmula em G2, pressione Enter. O conjunto de dados filtrado aparecerá em uma faixa de transbordamento começando na célula G2. À medida que você altera os valores em E1 ou E2, a lista filtrada é atualizada instantaneamente.
Este exemplo de fórmula assume que seus dados principais estão em A2:C20 e os critérios de filtro são inseridos em E1 (correspondendo à coluna A) e E2 (correspondendo à coluna B). Se você quiser filtrar por apenas uma coluna, pode simplificar a condição lógica de acordo. A mensagem "Sem correspondência" aparece se nenhuma linha corresponder aos critérios inseridos.
Dica: A função FILTER está disponível no Microsoft 365 e em algumas versões do Microsoft 19+. Para versões mais antigas do Excel, a filtragem dinâmica por meio de fórmulas é menos direta, e você pode querer explorar colunas auxiliares combinadas com o AutoFiltro tradicional ou recursos de filtro avançado. Verifique sua versão para garantir compatibilidade.
Ao usar essa solução, os resultados ocupam uma nova área na sua planilha, o que ajuda a preservar seus dados brutos. No entanto, o conjunto de dados original permanece inalterado — os filtros se aplicam apenas aos resultados exibidos, não ao status de exibição dos dados originais.
Erros potenciais: Se você vir um erro #NOME? ou #SPILL!, verifique se está usando uma versão compatível do Excel e se não há células mescladas na faixa de resultados. Além disso, evite colocar outros dados na área de transbordamento da fórmula para evitar bloqueios.
Filtrar automaticamente linhas com base no valor da célula digitado com código VBA
Suponha que você esteja trabalhando com um conjunto de dados e deseje filtrar os registros automaticamente com base em critérios que você digita em células específicas. Por exemplo, quando você preenche suas condições desejadas nas células E1 e E2, os dados na planilha são filtrados automaticamente para corresponder a esses valores, conforme ilustrado abaixo:
Para automatizar a filtragem dessa maneira, você pode configurar uma solução VBA simples. Esse método é acionado sempre que você atualiza o valor nas células de filtro designadas. É especialmente útil para dashboards, relatórios interativos ou modelos nos quais os usuários esperam filtragem dinâmica a partir de células de parâmetros centrais.
1. Vá para a planilha onde você deseja automatizar a filtragem de linhas com base nas entradas inseridas nas células.
2. Clique com o botão direito no nome da aba da planilha na parte inferior da janela do Excel e escolha Visualizar Código no menu de contexto. Na janela Microsoft Visual Basic for Applications que aparece, cole o seguinte código VBA na grande área em branco (comumente chamada de janela de código ou módulo da planilha), conforme mostrado aqui:
Código VBA: Filtrar automaticamente dados de acordo com o valor da célula inserido
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice 20160606
If Target.Address = Range("E2").Address Then
Range("A1:C20").CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("E1:E2")
End If
End Sub
Observação: Neste código VBA, A1:C20 refere-se ao intervalo de dados onde o filtro será aplicado. E2 é a célula onde você digita o valor do filtro (seus critérios-alvo), e E1:E2 são as células usadas como condições de filtro. Você pode modificar esses intervalos conforme necessário — certifique-se de que eles reflitam com precisão onde seus dados e critérios de filtro estão localizados para a estrutura específica da sua planilha. Além disso, é melhor evitar células mescladas e garantir que seu intervalo de dados contenha cabeçalhos, se necessário, para uma filtragem precisa.
3. Agora, insira ou altere suas condições de filtro na célula E1 e/ou E2. Assim que você pressionar Enter, o código VBA será executado automaticamente e filtrará o intervalo de dados designado para mostrar apenas as linhas que correspondem aos seus critérios de entrada.
Se o filtro não parecer funcionar imediatamente após inserir um valor, certifique-se de que a funcionalidade de macro está habilitada na sua pasta de trabalho e verifique se os intervalos no código VBA correspondem corretamente ao layout atual da sua planilha. Em cenários com vários usuários, lembre os outros de que as macros devem estar habilitadas para que esse recurso funcione corretamente.
Esse método VBA é particularmente vantajoso para dashboards com parâmetros dinâmicos, modelos interativos para entrada de dados ou qualquer cenário em que a reaplicação manual dos critérios de filtro seria ineficiente. No entanto, observe que os usuários podem encontrar problemas se desativarem as macros, e as soluções baseadas em VBA são específicas para o arquivo em que o código foi adicionado.
Se o seu cenário exigir mudanças frequentes de critérios por vários usuários que podem ter diferentes configurações de segurança no Excel, ou se você planeja compartilhar seu arquivo amplamente, considere soluções alternativas baseadas em fórmulas ou suplementos do Excel.
Demonstração: Filtrar automaticamente linhas com base no valor da célula digitado com código VBA
Filtrar dados por vários critérios ou outras condições específicas, como pelo comprimento do texto, diferenciação entre maiúsculas e minúsculas, etc. Quando você precisa realizar operações de filtragem mais avançadas — como combinar vários critérios de filtro, filtrar pelo comprimento do texto, sensibilidade a maiúsculas e minúsculas ou filtrar com base em períodos específicos — os filtros internos do Excel podem ser insuficientes. Nesses cenários, o recurso Super Filtro do Kutools para Excel oferece uma maneira prática de gerenciar requisitos complexos de filtragem de forma fácil e eficiente. Esse recurso ajuda você:
Kutools para Excel: Equipado com mais de 300 suplementos práticos para Excel, com teste gratuito totalmente funcional por 30 dias. Baixe e experimente agora gratuitamente! |
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!