5 Exercícios de Fórmulas do Power BI para Praticar
Aprenda a resolver 5 exercícios de fórmulas do Power BI para que você consiga praticar e avaliar seu nível de aprendizado com as fórmulas DAX.
Praticar fórmulas DAX é a melhor forma de fixar o Power BI. Estes 5 exercícios cobrem funções essenciais como SUM, CALCULATE, FILTER e funções de inteligência de tempo, com soluções comentadas para você comparar o seu raciocínio e avaliar o seu nível.
Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!
O que você aprende neste vídeo
Resposta rápida: A aula resolve em DAX cinco exercícios sobre uma base de vendas: faturamento e lucro bruto com SUMX, média diária de unidades com DISTINCTCOUNT das datas, crescimento sobre o ano anterior com CALCULATE e DATEADD, filtrando só as datas até a última venda, e clientes novos por ano pelo ano da primeira compra, com VAR e FILTER.
Neste vídeo (51 min):
- 4:32 - Exercício 1: a medida de faturamento usa
SUMXsobre a tabela de vendas, com preço unitário vezes quantidade vendida; na base do exemplo, o cartão mostra 64 milhões, formatados como dólar porque as vendas são internacionais. - 8:23 - Exercício 2: o lucro bruto também sai de
SUMX, com preço unitário vezes quantidade menos custo unitário vezes quantidade, ou seja, só o custo do produto, sem gastos administrativos, folha salarial e impostos; na base do exemplo, 37 milhões. - 10:39 - A margem bruta, em outra medida, divide o lucro bruto pelo faturamento: 0,58, que formatado como percentual vira 58% na base do exemplo.
- 15:14 - Exercício 3: supondo que todo dia de loja aberta teve venda, os dias de operação saem de
DISTINCTCOUNTna data da venda (822 na base do exemplo), e a média diária divide o total de unidades vendidas por eles: 492 por dia. - 22:54 - Exercício 4: o faturamento do ano anterior usa
CALCULATEcomDATEADDsobre a coluna de datas da tabela calendário, voltando 12 meses (voltar 1 ano daria no mesmo); na matriz, cada mês ganha ao lado o faturamento do mesmo mês do ano anterior. - 26:30 - O crescimento percentual usa
DIVIDE, que ajuda a tratar erro, com o faturamento atual menos o do ano anterior no numerador e o do ano anterior no denominador; na base do exemplo, 2023 fica 7% abaixo de 2022. - 27:29 - Em 2024, a matriz mostra queda de 74%, o que não é verdade: o ano inteiro de 2023 está sendo comparado com os dados de 2024, que só vão até 1º de abril.
- 32:19 - Na tabela calendário, uma coluna nova marca sim para as datas até a última venda (1º de abril de 2024) e não para as seguintes; com vendas novas, basta atualizar os dados para ela acompanhar.
- 34:13 - Com essa coluna no filtro da matriz, só com as datas válidas, 2024 passa a ser comparado com o mesmo período de 2023 e, na base do exemplo, a queda fica em 0,06%.
- 44:26 - Exercício 5: para achar a primeira compra de cada cliente, uma coluna calculada guarda o código do cliente da linha numa variável e tenta
CALCULATEcomMINda data da venda e um filtro simples pelo cliente, e o Power BI acusa dependência circular. - 46:06 - Com
FILTERsobre a tabela de vendas no lugar do filtro simples, dentro doCALCULATE, a coluna devolve a data da primeira compra de cada cliente, eYEARem volta deixa só o ano. - 48:42 - Com esse ano inicial nas linhas e a contagem distinta de clientes nos valores, a matriz mostra os clientes novos de cada ano: na base do exemplo, 41 mil em 2023, entre os 67 mil atendidos naquele ano, e 9 mil em 2024.
Trechos do vídeo:
SUMserve quando a coluna com os valores já existe; quando ela não existe, como o faturamento de cada venda,SUMXcalcula a expressão em cada linha da tabela e soma tudo no final, sem precisar criar a coluna antes.- A coluna de datas usada no
DATEADDprecisa ter todas as datas do período, inclusive os dias sem venda: por isso ela vem de uma tabela calendário completa. - Comparar um ano ainda incompleto com o ano anterior inteiro distorce o crescimento: a comparação justa é com o mesmo período do ano anterior, até a data da última venda.
- Toda fórmula DAX que declara uma variável com
VARprecisa de umRETURN, que é onde começa o cálculo que a fórmula devolve. - Para ter um valor em cada linha da tabela, como marcar se cada data é válida ou não, o caminho é uma coluna nova, e não uma medida.
Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:
5 Exercícios de Fórmulas do Power BI para Praticar
Na aula de hoje, vamos resolver cinco exercícios de fórmulas do Power BI para que você possa praticar e medir seu conhecimento em relação às fórmulas DAX.
A ideia é que você tente solucionar os exercícios antes de ver como foram resolvidos, dessa forma, você pode comparar sua solução com a minha. Mas, caso prefira, também pode acompanhar o passo a passo junto comigo!
Eu separei cinco exercícios de fórmulas DAX no Power BI, que são extremamente importantes, para que você saiba como resolver um problema no Power BI a partir de um desafio proposto.
Você precisará saber qual fórmula usar, qual abordagem tomar e como utilizá-la para resolver o problema. É por isso que esses exercícios práticos serão tão importantes para te auxiliar nos seus estudos e desenvolvimento com o Power BI.
E aí, bora praticar as fórmulas DAX e ver como está o seu nível no Power BI? Então, faça o download do material disponível e vem comigo!
Apresentando a Base de Dados
No material disponível para download, você encontrará a base de dados que utilizaremos para solucionar os exercícios propostos, assim como o arquivo com os desafios.

Essa base de dados apresenta o histórico de vendas de uma empresa, com informações sobre as datas das vendas, os produtos vendidos, a quantidade, o preço de custo e de venda e o local da venda.
Exercício #1
Crie uma medida que calcule o faturamento total da empresa. Apresente no Relatório o Faturamento de acordo com cada Marca.
Para resolver esse desafio, primeiro precisamos criar uma medida para calcular o faturamento total da empresa, que é a soma do faturamento individual de cada venda.
No entanto, não temos uma coluna com o faturamento por venda, que seria a multiplicação do preço unitário pela quantidade vendida. Então, primeiro precisamos obter esse valor para depois calcular o faturamento total.
Uma forma de fazer isso seria criar uma coluna nova com o faturamento por venda e depois aplicar a função SUM nela.
Esse método funcionaria, porém, não é o mais eficiente. Por isso, utilizaremos a função SUMX, em que podemos realizar esse cálculo sem a necessidade de criar uma nova coluna.
A SUMX é uma das funções iteradoras DAX no Power BI, que permitem realizar cálculos linha por linha e aplicar agregações (soma, máximo, mínimo, média, etc.).
Dessa forma, podemos utilizar a fórmula SUMX no Power BI para realizar uma soma sem precisar de uma coluna específica na tabela, executando tudo através da medida.
A fórmula funciona da seguinte forma: você fornece a tabela na qual o cálculo será realizado e, em seguida, especifica a expressão a ser calculada para cada linha da tabela.

Então, vamos criar a medida Faturamento e aplicar a fórmula.
Faturamento = SUMX(
Vendas,
Vendas[PrecoUnitario]*Vendas[Qtd. Vendida]
)Basicamente, o que essa fórmula está fazendo é, para cada linha, calcular o faturamento individual das vendas e armazenar esse valor, que é somado com o resultado da próxima linha até obter o faturamento total.
Com a medida feita, podemos formatá-la como moeda, deixando o número de casas decimais em dois, e criar um cartão na guia de relatório para visualizar o valor.

Com isso, temos o valor total do faturamento da empresa. Porém, a segunda parte do exercício pede para apresentarmos o faturamento de acordo com cada marca.
Para fazer isso, vamos adicionar uma matriz, passando a coluna Marca para o campo das Linhas e a medida Faturamento para o campo de Valores.


Dessa forma, temos tanto o faturamento total quanto o faturamento por cada marca.
Exercício #2
Calcule o Lucro Bruto da empresa (Receita - Custo do Produto). Depois apresente o Lucro Bruto por Categoria, e calcule também a Margem de Lucro Bruto da empresa (em percentual).
O primeiro passo para a solução desse desafio é calcular o lucro bruto da empresa. O lucro bruto de cada venda é obtido subtraindo o custo unitário do preço unitário e multiplicando pela quantidade vendida.
Como queremos o lucro bruto total da empresa, utilizaremos novamente a função SUMX para obter esse resultado, já que não temos uma coluna com o lucro bruto individual.
Lucro Bruto = SUMX(
Vendas,
(Vendas[PrecoUnitario]-Vendas[Custo Unitário])*Vendas[Qtd. Vendida]
)Novamente, podemos formatar a medida como moeda com duas casas decimais e criar um cartão para exibir o resultado.

Agora que já temos o lucro bruto da empresa, podemos criar uma matriz para determinar o lucro bruto por categoria, definindo a coluna Categoria como Linhas e o Lucro Bruto como Valores.

Para finalizar, precisamos calcular a margem de lucro bruto da empresa. A margem de lucro bruto é calculada como a porcentagem do lucro bruto em relação ao faturamento total da empresa.
Então, para calculá-la, basta criar uma nova medida dividindo o Lucro Bruto pelo Faturamento.
Margem Bruta = [Lucro Bruto]/[Faturamento]Por fim, formatamos essa medida como porcentagem e adicionamos o resultado a um cartão na guia relatório.

Exercício #3
Calcule a média de vendas feitas por dia na empresa.
Para calcular a média das vendas feitas por dia na empresa, precisamos pegar o número total de vendas feitas e dividir pelo total de dias.
Para calcular o total de vendas, basta somarmos a coluna Qtd. Vendida. Então, vamos criar essa medida e aplicar a função SUM.
Total Vendido = SUM(Vendas[Qtd. Vendida])Para visualizar o resultado, podemos criar um cartão na guia de relatórios e adicionar essa medida, visualizando assim o valor de 405 mil unidades vendidas.

Agora, precisamos calcular a quantidade de dias que a empresa operou. Na nossa tabela, temos a coluna Data da Venda, porém essa coluna possui valores repetidos, pois podemos ter mais de uma venda em um dia.
Para calcular apenas a quantidade de dias únicos que a empresa trabalhou, vamos utilizar a função DISTINCTCOUNT.
Essa função recebe como argumento o nome da coluna desejada e retorna a quantidade de valores distintos presentes nela. Vamos criar uma medida para utilizá-la.
Qtd Dias = DISTINCTCOUNT(Vendas[Data da Venda])Também podemos exibir esse resultado em um cartão.

Com os dois valores em mãos, podemos criar uma medida para calcular a média de vendas feitas por dia e adicionar a um cartão também.
Média Diária de Vendas = [Total Vendido]/[Qtd Dias]
Exercício #4
Calcule o crescimento % de faturamento de cada ano com relação ao ano anterior.
Esse é um exercício de comparativo entre anos. Para calcular o percentual de faturamento de cada ano em relação ao ano anterior, precisamos primeiro ter o faturamento para cada ano.
Como já temos a medida do Faturamento, podemos criar uma matriz passando o Faturamento para o campo Valores e as Datas da tabela calendário para o campo Linhas, ajustando para exibir apenas os Anos e os Meses.

Dessa forma, já conseguimos visualizar os valores do faturamento para cada ano e o faturamento total.
Tendo esses valores, precisamos calcular o crescimento de um ano para o outro. O cálculo é feito da seguinte forma: (Valor do ano atual – Valor do ano anterior)/ Valor do ano anterior.
Logo, precisamos criar uma medida para calcular o faturamento do ano anterior ao ano analisado, para aplicar esse valor ao nosso cálculo. Para fazer isso, utilizaremos as fórmulas CALCULATE e DATEADD.
A função CALCULATE nos permite fazer um cálculo com base em uma condição. Por sua vez, a função DATEADD nos permite criar essa condição, “deslocando” o período analisado para o ano anterior.
Logo, quando estivermos analisando o faturamento do ano de 2023, também teremos acesso ao faturamento do ano de 2022.
Vamos criar uma nova medida chamada Fat Ano Anterior.
Fat Ano Anterior = CALCULATE([Faturamento],
DATEADD(Calendario[Datas],-12, MONTH)
)Dentro dessa medida, utilizamos a fórmula CALCULATE para calcular o [Faturamento], a expressão que queremos calcular, com base no filtro desse cálculo, definido pela fórmula DATEADD.
Na fórmula DATEADD, passamos três informações: a coluna que contém todas as datas do período que queremos analisar (Calendario[Datas]), o número de intervalos que queremos deslocar (-12 porque queremos deslocar um ano para trás) e qual é esse intervalo (MONTH porque queremos deslocar 12 meses).
Com essa medida criada, podemos adicioná-la aos valores da nossa matriz.

Agora podemos calcular o percentual de crescimento seguindo o cálculo mencionado anteriormente. Para isso, crie uma nova medida chamada % Crescimento Fat.
Para realizar o cálculo sem erros, evitando a divisão por zero, já que não existe ano anterior a 2022, utilizaremos a fórmula DIVIDE.
% Crescimento Fat = DIVIDE(
[Faturamento]-[Fat Ano Anterior],
[Fat Ano Anterior]
)Com isso, podemos formatar essa medida para percentual e adicioná-la aos valores da matriz.

A princípio, parece que conseguimos solucionar o exercício, porém, tem um detalhe importante que precisa ser levado em consideração.
Ao avaliar o ano de 2024, há um indicativo de uma queda de 74,69% em relação ao ano anterior. No entanto, essa informação não é precisa, porque ele está comparando o ano inteiro de 2023 com apenas 4 meses de 2024.

Para realizar uma análise mais precisa entre os anos 2023 e 2024 no Power BI, é crucial considerar o período vigente. Isso significa verificar se as datas em análise estão dentro do intervalo em que temos registros de vendas.
Ou seja, as datas posteriores à última data de venda registrada não serão consideradas.
A solução para isso é criar a coluna Data Válida? dentro da nossa tabela de calendário. Essa coluna receberá a seguinte fórmula:
Data Válida? = IF(
Calendario[Datas]<=MAX(Vendas[Data da Venda]),
"Sim",
"Não"
)Aqui, utilizamos a função IF para verificar se as datas da coluna Data na tabela Calendário são menores ou iguais à data máxima na coluna Data da Venda da tabela Vendas (ou seja, a data mais recente com venda).
Se a condição for verdadeira, a coluna Data Válida? será preenchida com Sim; caso contrário, será preenchida com Não.

No caso, a data máxima é 01/04/2024, porém essa fórmula atualizará automaticamente a tabela caso novas vendas sejam adicionadas na tabela Vendas.
Feito isso, para finalizar, vamos adicionar a coluna Data Válida? aos Filtros da matriz, selecionando apenas a opção Sim. Isso nos permitirá visualizar e considerar apenas as datas válidas.

Agora sim conseguimos ter os valores comparados corretamente.
Exercício #5
Calcule a quantidade de novos clientes por ano.
Para calcular a quantidade total de clientes distintos atendidos na empresa, podemos utilizar a função DISTINCTCOUNT passando a coluna ID Cliente.
Clientes Distintos = DISTINCTCOUNT(Vendas[ID Cliente])Com essa medida pronta, podemos visualizar a quantidade de clientes distintos atendidos em cada ano. Para isso, basta criarmos uma matriz com os Clientes Distintos como Valores e os Anos como Linhas.

Porém, isso ainda não soluciona o nosso problema. Nós temos a quantidade de clientes únicos atendidos a cada ano, mas em 2023 e 2024 podem existir clientes únicos que já foram atendidos nos anos anteriores.
Para identificar os novos clientes por ano, precisamos criar uma coluna que identifique o ano em que cada cliente foi atendido pela primeira vez. Vamos chamá-la de Ano Inicial Cliente.
Ano Inicial Cliente =
var clienteatual = Vendas[ID Cliente]
return
YEAR(CALCULATE(
MIN(Vendas[Data da Venda]),
FILTER(Vendas,
Vendas[ID Cliente]=clienteatual)
))Repare que esta é uma fórmula mais complexa se comparada com as outras que utilizamos ao longo dessa aula, então vamos compreendê-la por partes.
Primeiro, criamos uma variável chamada clienteatual que armazena o valor do ID do cliente da linha atual na tabela Vendas.
Em seguida, usamos a função YEAR para extrair o ano de uma data. Essa data será obtida a partir da função CALCULATE.
Como vimos, a função CALCULATE permite que realizemos um cálculo com base em um filtro específico. Aqui, queremos calcular a data mínima da venda para o cliente atual. Para isso, utilizamos a função MIN, que retorna a menor data na coluna Data da Venda.
Para garantir que estamos calculando a data mínima apenas para o cliente atual, utilizamos a função FILTER.
A função FILTER aplica um filtro na tabela Vendas, retornando apenas as linhas onde o ID do Cliente é igual à variável clienteatual.
Assim, conseguimos obter o ano da primeira compra para cada cliente.

Feito isso, podemos criar uma nova matriz, passando a coluna Ano Inicial Cliente para o campo linhas e a medida Clientes Distintos para os valores.

Dessa forma, temos a quantidade de novos clientes que foram atendidos em cada ano.
Conclusão – 5 Exercícios de Fórmulas do Power BI para Praticar
Na aula de hoje, vimos cinco exercícios de fórmulas do Power BI para que você possa praticar e medir seus conhecimentos em relação às fórmulas DAX.
Esses exercícios práticos são fundamentais para auxiliar no seu aprendizado e desenvolvimento com o Power BI. Ao praticar, você fortalece suas habilidades em DAX, fórmulas extremamente importantes para trabalhar com BI. Continue praticando e retomando esses e outros exercícios para melhorar ainda mais seu nível e domínio do Power BI.
Hashtag Treinamentos
Para acessar outras publicações de Power BI, clique aqui!
1. Como praticar fórmulas DAX no Power BI?
A melhor forma é resolver exercícios com dados reais, recriando medidas do zero. Comece por funções de agregação (SUM, AVERAGE), depois CALCULATE e FILTER, e por fim inteligência de tempo, sempre conferindo o resultado.
2. Quais fórmulas DAX são essenciais para iniciantes?
As essenciais são SUM, AVERAGE, COUNT, CALCULATE, FILTER e funções de tempo como TOTALYTD. Dominar a CALCULATE é especialmente importante, pois ela está por trás da maioria das medidas mais avançadas.
3. Qual a diferença entre coluna calculada e medida no Power BI?
A coluna calculada é gerada linha a linha e ocupa espaço no modelo; a medida é calculada no momento da visualização, conforme os filtros. Para totais e indicadores, o ideal é usar medidas.
4. Preciso baixar algum arquivo para fazer os exercícios?
Sim, disponibilizamos a base usada nos exercícios gratuitamente: informe o e-mail para recebê-la. Assim você pratica com os mesmos dados e compara o seu resultado com as soluções.


