A função FILTRO permite filtrar um intervalo de dados com base nos critérios que você defina.
No exemplo a seguir, usamos a fórmula =FILTRO(A5:D20;C5:C20=H2;"") para retornar todos os registros da Apple, conforme selecionado na célula H2, e se não houver apples, retornar uma string vazia ("").
Sintaxe
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ção
- 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, ocorrerá um erro #CALC! , já que o Excel não suporta atualmente matrizes vazias.
- Se qualquer valor do argumento de inclusão for um erro (#N/A, #VALUE etc.) ou não puder ser convertido em um booleano, a função FILTER retornará 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, todas as fórmulas de matriz dinâmica vinculadas retornarão um erro #REF! quando forem atualizadas.
Exemplos
FILTRO usada para retornar vários critérios
Nesse caso, estamos usando o operador de multiplicação (*) para retornar todos os valores em nosso intervalo de matriz (A5:D20) que têm Maçãs E estão na região Leste: =FILTRO(A5:D20,(C5:C20=H1)*(A5:A20=H2),"").
FILTRO usado para retornar vários critérios e classificar
Nesse caso, estamos usando a função FILTRO anterior com a função CLASSIFICAR para retornar todos os valores em nosso intervalo de matriz (A5:D20) que têm Maçãs E estão na região Leste e, em seguida, classificamos as Unidades em ordem decrescente: =SORT(FILTER(A5:D20,(C5:C20=H1)*(A5:A20=H2),""),4,-1)
Nesse caso, estamos usando a função FILTRO com o operador de adição (+) para retornar todos os valores em nosso intervalo de matriz (A5:D20) que têm Maçãs OU estão na região Leste e, em seguida, classificar as Unidades em ordem decrescente: =SORT(FILTER(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ê sempre pode consultar um especialista na Excel Tech Community ou obter suporte nas Comunidades.