A função FILTRO permite filtrar um intervalo de dados com base nos critérios que você defina.
No exemplo seguinte, utilizámos a fórmula =FILTER(A5:D20,C5:C20=H2,"") para devolver todos os registos da Apple, conforme selecionado na célula H2 e, se não existirem maçãs, devolve uma cadeia vazia ("").
A função FILTRO filtra uma matriz com base em uma matriz booliana (verdadeiro/falso).
=FILTRO(matriz;incluir;[se_vazio])
Argumento |
Descrição |
matriz Obrigatório |
A matriz ou intervalo a filtrar |
include Obrigatório |
Uma matriz booliana cuja altura ou largura é a mesma da matriz |
[se_vazio] Opcional |
O valor a retornar se todos os valores na matriz incluída estiverem vazios (o filtro não retorna nada) |
Observações:
-
Uma matriz pode ser vista como uma linha de valores, uma coluna de valores ou uma combinação de linhas e colunas de valores. No exemplo acima, a matriz de origem para nossa fórmula FILTRO será o intervalo A5:D20.
-
A função FILTRO retornará uma matriz, que será despejada se for o resultado final de uma fórmula. Isso significa que o Excel cria dinamicamente o intervalo de matriz de tamanho apropriado quando você pressiona Enter. Se seus dados de suporte estiverem em uma Tabela do Excel, a matriz será redimensionada automaticamente ao adicionar ou remover dados do intervalo de matriz, se você estiver usando referências estruturadas. Para saber mais, confira este artigo sobre Comportamento de matriz despejada.
-
Se o conjunto de dados tiver a possibilidade de retornar um valor vazio, use o 3º argumento ([se_vazio]). Caso contrário, resultará no erro #CALC!, já que o Excel não dá suporte a matrizes vazias atualmente.
-
Se qualquer valor do argumento incluir for um erro (#N/D, #VALUE, etc.) ou não puder ser convertido num Booleano, a função FILTER devolverá um erro.
-
O Excel tem suporte limitado para matrizes dinâmicas entre pastas de trabalho, e esse cenário só tem suporte quando ambas as pastas de trabalho estão abertas. Se você fechar a pasta de trabalho de origem, as fórmulas de matriz dinâmicas vinculadas retornarão um erro #REF! ao serem atualizadas.
Exemplos
FILTRO usada para retornar vários critérios
Neste caso, estamos usando o operador de multiplicação (*) para retornar todos os valores no nosso intervalo de matriz (A5:D20) que tenham Maçãs E estejam na região Leste: =FILTRO(A5:D20;(C5:C20=H1)*(A5:A20=H2);"").
FILTRO usado para retornar vários critérios e classificar
Neste caso, estamos usando a função FILTRO anterior com essa função para retornar todos os valores no nosso intervalo matriz (A5:D20) que tenham Maçãs E estejam na região Leste, e depois classificar as Unidades em ordem decrescente: =CLASSIFICAR(FILTRO(A5:D20;(C5:C20=H1)*(A5:A20=H2);"");4;-1)
Neste caso, estamos usando a função FILTRO com o operador de adição (+) para retornar todos os valores no nosso intervalo matriz (A5:D20) que tenham Maçãs OU estejam na região Leste, e depois classificar Unidades em ordem decrescente: =CLASSIFICAR(FILTRO(A5:D20;(C5:C20=H1)+(A5:A20=H2);"");4;-1).
Observe que nenhuma das funções exige referências absolutas, já que elas apenas existem em uma célula e despejam seus resultados nas células vizinhas.
Precisa de mais ajuda?
Você pode sempre consultar um especialista na Excel Tech Community ou obter suporte nas Comunidades.