KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como filtrar automaticamente linhas com base no valor de uma célula no Excel?

AutorXiaoyang Data de Modificação

No Excel, a função Filtro Padrão oferece uma forma rápida de filtrar dados com base em critérios que selecione manualmente. Contudo, em determinados fluxos de trabalho, poderá pretender que os seus dados sejam atualizados automaticamente assim que introduzir um valor ou condição numa célula específica. Por exemplo, se desejar que o conjunto de dados seja imediatamente filtrado com base numa palavra-chave ou parâmetro inserido noutra célula, essa funcionalidade ultrapassa as capacidades nativas de filtragem do Excel. Este tipo de filtragem dinâmica — ou «filtro automático» — pode simplificar significativamente o seu processo de análise de dados, reduzir o tempo gasto em filtragens manuais e aumentar a precisão ao associar diretamente as condições de filtro aos valores das células. Se pretende implementar este mecanismo de filtro automático com base na entrada de uma célula, existem várias soluções práticas disponíveis para alcançar este resultado.

Filtrar automaticamente linhas com base no valor da célula através de uma fórmula do Excel

Filtrar automaticamente linhas com base no valor introduzido na célula com código VBA


Filtrar automaticamente linhas com base no valor da célula através de uma fórmula do Excel

Se preferir uma abordagem sem macros ou precisar de evitar o uso de VBA por motivos de segurança ou colaboração, pode criar um efeito de «filtro automático» combinando fórmulas com as funcionalidades de filtragem integradas do Excel. Esta solução funciona perfeitamente no Microsoft 365, Microsoft 2019 e versões posteriores que suportam funções de matrizes dinâmicas, como a FILTRO. É ideal para partilhar com colegas que possam ter as macros desativadas ou para modelos leves que exijam automação sem instalação.

1. Selecione uma célula vazia onde pretende que os seus resultados filtrados comecem (por exemplo, posicione o cursor na célula)G2).

=FILTER(A2:C20, (A2:A20=E1) * (B2:B20=E2), "No match")

2. Após introduzir a fórmula em G2, prima Enter. O conjunto de dados filtrado aparece automaticamente numa gama de transbordo (spill range) a partir da célula G2. À medida que altera os valores em E1 ou E2, a lista filtrada atualiza-se instantaneamente.

Este exemplo de fórmula assume que os seus dados principais estão em A2:C20 e as condições de filtro são introduzidas em E1 (correspondente à coluna A) e E2 (correspondente à coluna B). Se quiser filtrar apenas por uma coluna, pode simplificar a condição lógica em conformidade. A mensagem «Sem correspondência» aparece se nenhuma linha corresponder aos critérios introduzidos.

Dica: A função FILTRO está disponível no Microsoft 365 e em algumas versões do Excel 2019 ou posteriores. Em versões mais antigas do Excel, a filtragem dinâmica com fórmulas é menos direta — nesses casos, pode considerar usar colunas auxiliares combinadas com o Filtro Automático tradicional ou as funcionalidades de Filtro Avançado. Verifique a sua versão para garantir compatibilidade.

Ao utilizar esta solução, os resultados são colocados numa nova área da sua folha de cálculo, preservando assim os seus dados originais. Contudo, o conjunto de dados original permanece inalterado — os filtros aplicam-se apenas aos resultados apresentados, e não ao estado de exibição dos Dados de Origem.

Erros potenciais: Se vir um erro #NOME? ou #TRANSBORDO!, verifique se está a utilizar uma versão compatível do Excel e se não existem células mescladas na gama de resultados. Evite também colocar outros dados na área de transbordo da fórmula para prevenir bloqueios.


Filtrar automaticamente linhas com base no valor introduzido na célula com código VBA

Imagine que está a trabalhar com um conjunto de dados e pretende filtrar automaticamente os registos com base em critérios que introduz em células específicas. Por exemplo, ao preencher as condições pretendidas nas células E1 e E2, os dados na folha de cálculo são filtrados automaticamente para corresponder a esses valores, tal como ilustrado abaixo:

uma captura de ecrã da filtragem de linhas com base no valor introduzido numa célula

Para automatizar a filtragem desta forma, pode configurar uma solução simples em VBA. Este método é ativado sempre que atualiza o valor nas células de filtro designadas, sendo especialmente útil para painéis interativos, relatórios dinâmicos ou modelos em que os utilizadores esperam uma filtragem dinâmica com base em células centrais de parâmetros.

1. Aceda à folha de cálculo onde pretende automatizar a filtragem de linhas com base nas entradas introduzidas nas células.

2. Clique com o botão direito do rato no separador da folha, na parte inferior da janela do Excel, e selecione Ver Código no menu de contexto. Na janela do Microsoft Visual Basic for Applications que surge, cole o seguinte código VBA na área em branco (comummente designada por janela de código ou módulo da folha de cálculo), conforme mostrado aqui:

Código VBA: Filtrar automaticamente dados de acordo com o valor introduzido na célula

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

uma captura de ecrã que mostra como utilizar o código VBA

Nota: Neste código VBA, A1:C20 refere-se ao seu intervalo de dados onde aplicar o filtro. E2 é a célula onde introduz o valor do filtro (os seus critérios-alvo) e E1:E2 são as células utilizadas como condições de filtro. Pode ajustar estas gamas conforme necessário — basta garantir que refletem corretamente a localização dos seus dados e das condições de filtro na estrutura específica da sua folha de cálculo. Além disso, evite células mescladas e certifique-se de que o seu intervalo de dados inclui cabeçalhos, se aplicável, para uma filtragem precisa.

3. Agora, introduza ou altere as suas Condições de Filtro na célula E1 e/ou E2. Assim que premir Enter, o código VBA é executado automaticamente e filtra o Intervalo de Dadosdesignado, exibindo apenas as linhas que correspondem aos critérios introduzidos.

Se o filtro não parecer funcionar imediatamente após introduzir um valor, certifique-se de que as macros estão ativadas no seu livro e verifique se os intervalos no código VBA correspondem exatamente à disposição da sua Planilha Atual. Em cenários com múltiplos utilizadores, lembre-os de que as macros devem estar ativadas para garantir o correto funcionamento desta funcionalidade.

Este método VBA é particularmente vantajoso para painéis dinâmicos orientados por parâmetros, modelos interativos para introdução de dados ou qualquer cenário em que a reaplicação manual dos Condições de Filtro seria ineficiente. Contudo, note que os utilizadores podem encontrar problemas se desativarem as macros, e as soluções baseadas em VBA são específicas do ficheiro onde o código é adicionado.

Se o seu cenário exigir alterações frequentes de critérios por múltiplos utilizadores com definições de segurança variáveis no Excel, ou se planeia partilhar amplamente o seu ficheiro, poderá considerar soluções alternativas baseadas em fórmulas ou complementos do Excel.


Demonstração: Filtrar automaticamente linhas com base no valor introduzido na célula com código VBA

 

Filtrar dados por múltiplos critérios ou outra condição específica, como por Comprimento do texto, por Diferenciar Maiúsculas de Minúsculas, etc.

Quando precisa de realizar operações de filtragem mais avançadas — como combinar várias condições de filtro, filtrar por extensão do texto, considerar a sensibilidade a maiúsculas e minúsculas ou filtrar com base em períodos específicos —, as funções de filtro integradas do Excel podem revelar-se insuficientes. Nestes cenários, o Kutools para Excel's Super Filtro oferece uma solução prática para gerir requisitos complexos de filtragem de forma fácil e eficiente. Esta funcionalidade permite-lhe:

  • Aplicar múltiplos critérios em várias colunas; Filtrar dados pelo número de caracteres numa célula;
  • Filtrar por maiúsculas ou Texto em Minúsculas; Filtrar dados com base no ano, mês, dia, semana ou trimestre

uma captura de ecrã da utilização de Kutools for Excel para filtrar datas por múltiplos critérios

Kutools para Excel: Equipado com mais de 300 complementos práticos para Excel, teste gratuito totalmente funcional durante 30 dias.Transfira e experimente gratuitamente já!


As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos