(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa
CALCULATE em DAX: a função que muda o contexto de filtro
Power BI

CALCULATE em DAX: a função que muda o contexto de filtro

Equipa bConcepts 22/07/2025 2 min

Se há uma função que separa quem mexe em DAX de quem realmente domina DAX, é a CALCULATE. É a função mais poderosa da linguagem — e a que permite responder a perguntas como "quanto vendemos só na região Norte?" ou "qual a percentagem face ao total?". Perceber a CALCULATE é perceber DAX.

O que a CALCULATE faz de especial

Quase todas as funções DAX leem o contexto de filtro; a CALCULATE é a única que o modifica. Ela avalia uma expressão (normalmente uma medida) depois de aplicar os filtros que lhe indicas. É esse poder de mudar o contexto que a torna central.

CALCULATE em DAX: a função que muda o contexto de filtro

A sintaxe, sem mistério

A forma é CALCULATE( expressão, filtro1, filtro2, ... ). O primeiro argumento é o que queres calcular; os seguintes são as condições a aplicar. Por exemplo, CALCULATE( [Total Vendas], Regiao[Nome] = "Norte" ) devolve as vendas apenas do Norte, independentemente do que estiver selecionado na página.

Substituir vs acrescentar filtros

  • Por defeito, a CALCULATE substitui o filtro existente na coluna que mencionas — se a página filtra "Sul" e a CALCULATE pede "Norte", ganha o Norte.
  • Para preservar o contexto, usa KEEPFILTERS quando queres intersetar em vez de sobrepor.
  • REMOVEFILTERS/ALL tiram filtros — essenciais para cálculos de percentagem face ao total.

O padrão mais útil: percentagem do total

Uma das utilizações mais comuns é DIVIDE( [Total Vendas], CALCULATE( [Total Vendas], ALL(Produto) ) ): o numerador respeita o contexto (o produto da linha), o denominador remove-o (todos os produtos), dando a quota de cada produto. É a CALCULATE a mudar o contexto para criar o total de referência.

Erros a evitar

O engano clássico é esperar que a CALCULATE some sobre linhas como uma função de agregação — não é isso que ela faz. Ela ajusta o contexto e delega o cálculo à medida. Pensa nela como "calcula isto, mas primeiro muda o filtro para...".

Na prática

Domina a CALCULATE com filtros simples, depois explora ALL, KEEPFILTERS e variáveis. É o passo que transforma relatórios básicos em análises verdadeiramente flexíveis. Que pergunta do teu relatório resolverias hoje se soubesses mudar o contexto de filtro à vontade?

← Voltar aos insights
Vamos conversar?

Pronto para transformar os seus dados?

Marque uma reunião gratuita de 30 minutos e descubra como podemos ajudar a sua equipa a tomar melhores decisões.

Agendar Reunião Gratuita
bConcepts