Quantas linhas em que a expressão dá um valor (não vazio). Aceita uma tabela FILTRAR(...) no 1º argumento.
| Campo | Valor |
|---|---|
| Categoria | Contexto e filtro |
| Tipo | Agregação (opera sobre um conjunto de linhas) |
| Aridade | 1 a 2 argumentos |
| Compila para SQL (coluna calculada) | Não |
| Versão | Motor de fórmulas v3. |
Aliases#
Nome canônico: CONTX. Aliases aceitos (maiúsc./minúsc. indiferente): countx.
Assinatura#
CONTX(expr; [arg2])Todos os argumentos são expressões.
Retorno#
Número (linhas com resultado não vazio).
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#
Iterador — avalia a expressão LINHA A LINHA (a coluna nua vale por linha) e agrega o resultado. Aceita uma tabela virtual FILTRAR(...) no 1º argumento.
Diferenças para DAX#
- Equivalente DAX: COUNTX
- Compatibilidade: DIFERE do DAX — semântica diferente, atenção
- Observação: Conta as linhas em que a expressão dá um valor (não vazio). A tabela virtual do 1º argumento só pode ser FILTRAR(...).
Exemplos#
CONTX(SE(receita > 1000; 1))Exemplo com valores#
Entrada: conta as linhas com q > 2 (1 de 2).
CONTX(SE(q > 2; 1)) → 1Resultado esperado: 1
Exemplo de negócio#
Medida comparativa — participação no total, ranking, variação contra outro período.
Erros comuns#
Com dois argumentos, o 1º TEM que ser uma tabela FILTRAR(...) — senão erro guiado.