Calcula a expressão em cada linha e SOMA os resultados. 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: SOMAX. Aliases aceitos (maiúsc./minúsc. indiferente): sumx.
Assinatura#
SOMAX(expr; [arg2])Todos os argumentos são expressões.
Retorno#
Número (soma dos resultados por linha), ou 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: SUMX
- Compatibilidade: DIFERE do DAX — semântica diferente, atenção
- Observação: A tabela virtual do 1º argumento só pode ser FILTRAR(...); o SUMX do DAX aceita qualquer expressão de tabela.
Exemplos#
SOMAX(quantidade * preco)Exemplo com valores#
Entrada: linhas (q=2, p=10) e (q=3, p=20).
SOMAX(q * p) → 80Resultado esperado: 80
Exemplo de negócio#
Receita = soma de quantidade × preço linha a linha.
Erros comuns#
Com dois argumentos, o 1º TEM que ser uma tabela FILTRAR(...) — senão erro guiado.