Dentro de CALCULAR: mantém só as linhas em que a condição é verdadeira.
| Campo | Valor |
|---|---|
| Categoria | Contexto e filtro |
| Tipo | Agregação (opera sobre um conjunto de linhas) |
| Aridade | 1 argumento (fixo) |
| Compila para SQL (coluna calculada) | Não |
| Versão | Motor de fórmulas v3. |
Aliases#
Nome canônico: FILTRAR. Aliases aceitos (maiúsc./minúsc. indiferente): filter.
Assinatura#
FILTRAR(expr)Todos os argumentos são expressões.
Retorno#
Modificador/tabela virtual (não devolve valor sozinho).
Tratamento de nulos#
Quando não há linha no contexto trocado, devolve vazio (nunca zero) — um branco é mais honesto que um zero inventado.
Contexto de avaliação#
Modificador de CALCULAR (recorta o contexto) OU tabela virtual do 1º argumento de um iterador. Recebe os nós crus (avaliação preguiçosa).
Diferenças para DAX#
- Equivalente DAX: FILTER
- Compatibilidade: DIFERE do DAX — semântica diferente, atenção
- Observação: Recebe só uma CONDIÇÃO booleana (não tabela + condição). Usada como modificador de CALCULAR ou como 1º argumento (tabela virtual) de um iterador.
Exemplos#
CALCULAR(SOMA(receita); FILTRAR(uf = "SP"))Exemplo com valores#
Entrada: soma só do canal loja (60), num visual loja+site.
CALCULAR(SOMA(receita); FILTRAR(canal = "loja")) → 60Resultado esperado: 60
Exemplo de negócio#
Medida comparativa — participação no total, ranking, variação contra outro período.
Erros comuns#
Erros de digitação em nome de coluna, tipo incompatível ou argumento inválido viram mensagem amigável (pt-BR) — o motor nunca devolve um número errado em silêncio.