Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:✅ Power BI Desktop e serviço Power BI
Um cálculo visual é um cálculo de Expressões de Análise de Dados (DAX) que é executado diretamente num visual em vez de no modelo semântico. Utiliza os dados mostrados no visual, para que possa criar totais contínuos, médias móveis e comparações período a período sem gerir o contexto do filtro ou as relações do modelo. Os cálculos visuais são fórmulas DAX que se focam em dados visuais em vez de todo o modelo semântico.
Este artigo explica como funcionam os cálculos visuais, como os seus parâmetros controlam o fluxo de cálculo e como diferem de outros cálculos DAX.
O cálculo visual seguinte define uma soma contínua para o Valor das Vendas:
Running sum = RUNNINGSUM([Sales Amount])
Um cálculo visual pode referir-se a colunas, medidas ou outros cálculos visuais no mesmo visual.
Os cálculos visuais diferem das outras opções de cálculo no DAX:
- Armazenas os cálculos visuais num visual, não no modelo. Adicione um campo de modelo ao visual antes de o referir num cálculo visual.
- Os cálculos visuais combinam a simplicidade do contexto das colunas calculadas com a flexibilidade de cálculo sob demanda das medidas.
- Os cálculos visuais operam com dados agregados em vez de dados de nível de detalhe, pelo que frequentemente têm um desempenho superior às medidas equivalentes.
- Como os cálculos visuais fazem parte do visual, podem referir-se à sua estrutura.
Para uma comparação detalhada das opções de cálculo, consulte Usar opções de cálculo no Power BI Desktop.
Os visuais de tabela e matriz também disponibilizam cálculos visuais através da funcionalidade de totais personalizados, que lhe permite alterar o que a linha de total apresenta sem escrever DAX. Para mais informações, consulte os artigos visuais da tabela e da matriz .
Para aprender a adicionar ou editar um cálculo visual, veja Criar cálculos visuais.
Como funcionam os cálculos visuais
Crias cálculos visuais no modo Editar , que se abre sobre o visual selecionado. A superfície de edição tem três partes: uma pré-visualização do visual, uma barra de fórmulas para a expressão DAX e uma matriz visual que mostra os resultados à medida que se escreve.
A maioria dos cálculos visuais avalia cada linha na matriz visual, pelo que funções de agregação como SUM são geralmente desnecessárias. Funções que dependem de relações entre modelos, incluindo USERELATIONSHIP, RELATED e RELATEDTABLE, não estão disponíveis.
Depois de adicionar um cálculo visual, este aparece na lista de campos do visual e é apresentado no próprio visual.
Funções DAX disponíveis em cálculos visuais
Muitas funções DAX existentes funcionam em cálculos visuais. Os cálculos visuais também fornecem funções que funcionam como atalhos para funções da janela DAX.
| Função | Descrição | Exemplo | Atalho para |
|---|---|---|---|
| COLLAPSE | O cálculo é avaliado a um nível superior do eixo. | Porcentagem do pai = DIVIDE([Valor das vendas], COLLAPSE([Valor das vendas], ROWS)) | N/A |
| COLLAPSEALL | O cálculo é avaliado ao nível total do eixo. | Porcentagem do total geral = DIVIDIR([Valor das vendas], COLLAPSEALL([Valor das vendas], ROWS)) | N/A |
| EXPAND | O cálculo é avaliado a um nível inferior do eixo. | Média de filhos = EXPAND(MÉDIA([Valor das vendas]), ROWS) | N/A |
| EXPANDALL | O cálculo é avaliado ao nível da folha do eixo. | Média do nível foliar = EXPANDALL(MÉDIA([Valor das Vendas]), ROWS) | N/A |
| FIRST | Refere-se à primeira linha de um eixo. | ProfitVSFirst = [Lucro] - FIRST([Lucro]) | INDEX(1) |
| ISATLEVEL | Informa se uma coluna especificada está presente no nível atual. | IsFiscalYearAtLevel = ISATLEVEL([Ano fiscal]) | N/A |
| LAST | Refere-se à última linha de um eixo. | ProfitVSLast = [Lucro] - LAST([Lucro]) | INDEX(-1) |
| LOOKUP | Avalia uma expressão na matriz visual usando o contexto atual. | ProcurarVendasFor2025WithContext = LOOKUP(SUM([Sales]), [Year], "2025") | N/A |
| LOOKUPWITHTOTALS | Avalia uma expressão numa matriz visual que inclui totais. | LookupSalesFor2025WithTotals = LOOKUPWITHTOTALS(SOMA([Vendas]), [Ano], "2025") | N/A |
| MOVINGAVERAGE | Adiciona uma média móvel em um eixo. | MovingAverageSales = MOVINGAVERAGE([ValorDeVendas], 2) | WINDOW |
| NEXT | Refere-se a uma próxima linha de um eixo. | ProfitVSNext = [Lucro] - NEXT([Lucro]) | OFFSET(1) |
| PREVIOUS | Refere-se a uma linha anterior de um eixo. | ProfitVSPrevious = [Lucro] - PREVIOUS([Lucro]) | OFFSET(-1) |
| RANGE | Refere-se a uma fatia de linhas de um eixo. | AverageSales = AVERAGEX(RANGE(1), [Valor das vendas]) | WINDOW |
| RUNNINGSUM | Adiciona uma soma em execução em um eixo. | RunningSumSales = RUNNINGSUM([Valor das vendas]) | WINDOW |
Parâmetros que controlam o fluxo de cálculo
Algumas funções de cálculo visual aceitam parâmetros opcionais que controlam como o cálculo percorre a matriz visual:
- Axis e Reset são específicas para cálculos visuais. Referem-se à estrutura visual em vez de campos específicos.
- OrderBy e PartitionBy também trabalham em colunas e medidas calculadas. Fazem referência diretamente aos campos.
As secções seguintes descrevem cada parâmetro e quando usar um em detrimento do outro.
Axis
Muitas funções têm um parâmetro opcional Axis , que só pode usar em cálculos visuais. O Axis parâmetro influencia a forma como o cálculo visual percorre a matriz visual. O parâmetro Axis tem como predefinição o primeiro eixo do elemento visual. Para muitos visuais, o primeiro eixo é ROWS, o que significa que o cálculo visual é avaliado fila a linha na matriz visual, de cima para baixo. A tabela a seguir mostra os valores válidos para o Axis parâmetro:
| Axis ícone | Axis Designação | Descrição |
|---|---|---|
|
ROWS | Calcula ao longo das linhas. |
|
COLUMNS | Calcula ao longo das colunas. |
|
ROWS COLUMNS | Calcula por linhas e depois por colunas. |
|
COLUMNS ROWS | Calcula por colunas e depois por linhas. |
| ROWPAGES | Calcula em múltiplos pequenos. | |
| ROWS ROWPAGES | Calcula em linhas e depois em múltiplos pequenos. | |
| COLUMNS ROWPAGES | Calcula em colunas e depois em múltiplos pequenos. | |
| ROWPAGES ROWS | Calcula em múltiplos pequenos e depois em linhas. | |
| ROWPAGES COLUMNS | Calcula em múltiplos pequenos e depois em colunas. | |
| ROWS COLUMNS ROWPAGES | Calcula ao longo de linhas, colunas e depois múltiplos pequenos. | |
| ROWS ROWPAGES COLUMNS | Calcula entre linhas, em múltiplos pequenos e depois nas colunas. | |
| COLUMNS ROWS ROWPAGES | Calcula ao longo das colunas, das linhas e, depois, dos pequenos múltiplos. | |
| COLUMNS ROWPAGES ROWS | Calcula por colunas, múltiplos pequenos e depois por linhas. | |
| ROWPAGES ROWS COLUMNS | Calcula em múltiplos pequenos, linhas e depois colunas. | |
| ROWPAGES COLUMNS ROWS | Calcula em múltiplos pequenos, colunas e depois linhas. |
Os cálculos visuais suportam imagens que usam múltiplos pequenos. Na matriz visual, o campo na secção Pequenos múltiplos aparece no eixo ROWPAGES. Use ROWPAGES para calcular ao longo dos múltiplos pequenos, ou combiná-lo com ROWS e COLUMNS para controlar a ordem de percurso.
Nota
Se especificar um eixo que não está presente no visual, o cálculo ignora esse eixo.
Reset
Muitas funções incluem um parâmetro opcional Reset que só pode usar em cálculos visuais. Este parâmetro particiona a coluna alvo para determinar quando a função reinicia para 0 ou muda de âmbito ao percorrer a matriz visual.
O valor padrão é NONE, o que significa que o cálculo não é reiniciado.
O Reset parâmetro aceita estes valores:
- Um inteiro.
- Uma referência de coluna.
- Um sinónimo: HIGHESTPARENT, LOWESTPARENT, ou NONE.
Cada valor especifica um nível-alvo na hierarquia de cálculo visual. O cálculo interpreta este nível em modo absoluto ou relativo .
O sinal de um número inteiro determina o modo. Valores positivos usam modo absoluto, valores negativos usam modo relativo, e 0 não reinicia o cálculo. Os sinónimos fornecem valores equivalentes.
Uma referência de coluna utiliza o modo absoluto.
Modo de reset absoluto
O modo absoluto particiona pela coluna alvo e todas as colunas acima dela. Se a coluna alvo não estiver presente a um nível, o cálculo é particionado pelas colunas restantes disponíveis.
Um inteiro positivo identifica a coluna alvo a partir do topo da hierarquia. A coluna superior é 1, a coluna seguinte é 2, e o valor máximo é N, o número de colunas na hierarquia. Para valores superiores a N, utilize N. Também pode especificar a coluna diretamente.
Por exemplo, considere um cálculo visual com estes níveis de hierarquia: Ano, Trimestre, Mês e Dia. A tabela seguinte mostra como o cálculo se particiona em cada nível dependendo do valor de Reset:
| Nível / valor | Reset = 1 ou Ano | Reset = 2 ou Trimestre | Reset = 3 ou Mês | Reset = 4 ou Dia |
|---|---|---|---|---|
| Nível diário | Ano | Trimestre e Ano | Mês, Trimestre e Ano | Dia, Mês, Trimestre e Ano |
| Nível do mês | Ano | Trimestre e Ano | Mês, Trimestre e Ano | Mês, Trimestre e Ano |
| Nível trimestral | Ano | Trimestre e Ano | Trimestre e Ano | Trimestre e Ano |
| Nível escolar | Ano | Ano | Ano | Ano |
| Nível total geral | Nenhum | Nenhum | Nenhum | Nenhum |
Modo de reinício relativo
Para um inteiro negativo -X, o modo relativo particiona por colunas que estejam X ou mais níveis acima do nível atual. Se nenhuma coluna cumprir essa condição, o cálculo não se particiona. Os valores válidos variam de -1 a -N+1, onde N é o número de colunas na hierarquia. Os valores abaixo desse intervalo utilizam -N+1.
A tabela seguinte mostra o modo relativo para uma hierarquia com Ano, Trimestre, Mês e Dia:
| Nível / valor | Reset = -1 | Reset = -2 | Reset = -3 |
|---|---|---|---|
| Nível diário | Mês, Trimestre e Ano | Trimestre e Ano | Ano |
| Nível do mês | Trimestre e Ano | Ano | Nenhum |
| Nível trimestral | Ano | Nenhum | Nenhum |
| Nível escolar | Nenhum | Nenhum | Nenhum |
| Nível total geral | Nenhum | Nenhum | Nenhum |
Sinónimos de parâmetros de redefinição
O Reset parâmetro também fornece os seguintes sinónimos:
- NONE é o valor padrão. Ele não redefine o cálculo e é equivalente a 0.
- HIGHESTPARENT efetua uma reposição absoluta ao nível mais alto e é equivalente a 1.
- LOWESTPARENT Executa uma redefinição relativa pelo pai imediato e é equivalente a -1.
Exemplos de utilização do parâmetro Reset
Para uma hierarquia com Ano, Trimestre, Mês e Dia, os seguintes cálculos são equivalentes. Eles devolvem a soma do Montante da Venda e reiniciam para cada ano em cada nível de avaliação:
RUNNINGSUM([Sales Amount], HIGHESTPARENT)
RUNNINGSUM([Sales Amount], 1)
RUNNINGSUM([Sales Amount], [Year])
Os cálculos seguintes reiniciam a soma do Montante das Vendas em 0 para cada pai imediato. O elemento principal depende do nível de avaliação:
RUNNINGSUM([Sales Amount], LOWESTPARENT)
RUNNINGSUM([Sales Amount], -1)
O cálculo seguinte não é reposto. Soma o Montante de Vendas de cada dia aos valores anteriores:
RUNNINGSUM([Sales Amount])
OrderBy e PartitionBy
O OrderBy parâmetro aceita ORDERBY, e o PartitionBy parâmetro aceita PARTITIONBY. Ao contrário de Axis e Reset, podes usar estes parâmetros em colunas calculadas, medidas e cálculos visuais, e eles referem-se diretamente a campos.
Nem todas as funções fornecem estes parâmetros. As funções exclusivas de cálculo visual não fornecem um PartitionBy parâmetro. As funções de janela só fornecem um Reset parâmetro se as usares num cálculo visual. O Relation parâmetro nas funções de janela está disponível quer o use ou não num cálculo visual, mas só aceita um Axis se o usar num cálculo visual.
Escolha entre estes parâmetros
Não precisas de especificar todos estes parâmetros, e podes combiná-los. Para decidir que parâmetro usar:
- Prefira Axis e Reset quando pretender um comportamento independente do campo que acompanhe a estrutura visual. Referir-se à estrutura visual é mais flexível do que referenciar campos explicitamente.
- OrderBy Use e PartitionBy quando quiser fixar o cálculo em campos específicos, independentemente da disposição visual.
- Utilize PartitionBy em vez de Reset quando o eixo tem apenas um nível. Reset Requer múltiplos níveis, por isso não funciona com um campo ou com vários campos num só nível.
Seletores de parâmetros
Utilize seletores de parâmetros para selecionar valores para parâmetros da função de cálculo visual. A imagem seguinte mostra o modelo Procurar um valor com totais :
Para ativar os seletores de parâmetros, pressione Ctrl+Espaço.
Modelos visuais de cálculo
Os cálculos visuais incluem modelos para facilitar a escrita de cálculos comuns. O botão de modelos no modo de edição de cálculos visuais abre um menu de modelos disponíveis.
Estão disponíveis os seguintes modelos:
- Soma corrente. Calcula a soma dos valores, adicionando o valor atual aos valores anteriores. Usa a RUNNINGSUM função.
- Média móvel. Calcula uma média de um conjunto de valores em uma determinada janela dividindo a soma dos valores pelo tamanho da janela. Usa a MOVINGAVERAGE função.
- Percentagem de pais. Calcula a porcentagem de um valor em relação ao pai. Usa a COLLAPSE função.
- Percentagem do total geral. Calcula a porcentagem de um valor em relação a todos os valores, usando a COLLAPSEALL função.
- Média de crianças. Calcula o valor médio do conjunto de valores filho. Usa a EXPAND função.
- Comparado com o anterior. Compara um valor com um valor anterior, usando a PREVIOUS função.
- Contra o próximo. Compara um valor com um valor subsequente, usando a NEXT função.
- Contra primeiro. Compara um valor com o primeiro valor, usando a função FIRST.
- Comparado com o último. Compara um valor com o último valor, usando a função LAST.
- Procure um valor com base no contexto. Encontra um valor ou avalia uma expressão na matriz visual dentro do contexto atual. Usa a LOOKUP função.
- Procure um valor com totais. Encontra um valor ou avalia uma expressão na matriz visual com totais. Usa a LOOKUPWITHTOTALS função.
Ocultar campos no visual
No modo de edição de cálculos visuais, podes esconder campos do visual, tal como escondes colunas e tabelas na visualização de modelação. Por exemplo, para mostrar apenas o cálculo visual do Lucro , oculte o Montante das Vendas e o Custo Total do Produto da vista.
Campos ocultos permanecem na matriz visual, pelo que os cálculos visuais ainda podem referir-se a eles. Eles não aparecem no visual resultante. Inclua campos ocultos apenas quando os seus cálculos visuais os exigirem.
Formatar um cálculo visual
Formate um cálculo visual com tipos de dados, opções de formatação ou uma cadeia de formatos personalizada ao nível visual. As opções de formato de dados na secção Geral do painel de formatação controlam o formato.
Considerações e limitações
Tipos visuais não suportados
Cálculos visuais e campos ocultos não funcionam com os seguintes visuais:
- Slicer, visual R, visual em Python
- Influenciadores Chave, Árvore de Decomposição, Perguntas e Respostas, Narrativa Inteligente
- Métricas, Relatório Paginado, Power Apps, Power Automate
- Elementos visuais personalizados
Funcionalidades não suportadas
As seguintes funcionalidades não estão disponíveis com cálculos visuais:
- Filtragem, ordenação ou alteração de agregações
- Auto-referenciação (um cálculo não pode referir-se a si próprio)
- Copiar/colar ou reutilizar entre visuais
- Categorias de dados, limites de dados ou mostrar itens sem dados
- Strings de formato dinâmico (não podem ser definidas ou usadas como string de formato)
- Personalização de cálculos visuais ou campos ocultos
- Podes definir alertas em cálculos visuais, mas alterações nos valores de cálculo visual não ativam os alertas.
- Ver exploração de registos
- IntelliSense em Power BI integrado
Limitações de publicação e partilha
- Não consigo fixar nos painéis de controlo
- Não é possível usar Publish to web
- As exportações de dados excluem resultados de cálculos visuais; Campos ocultos só aparecem nas exportações de dados subjacentes
Outras limitações
- Os parâmetros de campo funcionam com cálculos visuais, mas têm algumas limitações.
- As ligações ativas ao SQL Server Analysis Services requerem a versão 2025 ou posterior.
Conteúdo relacionado
- Criar cálculos visuais
- Módulo de formação: Criar cálculos visuais no Power BI Desktop
- Usar opções de cálculo no Power BI Desktop
- Criar medidas para análise de dados no Power BI Desktop
- Criar e formatar visualizações de tabelas no Power BI - inclui totais personalizados, que são alimentados por cálculos visuais.