Fórmulas DAX para análise financeira avançada no Power BI
Cria medidas DAX complexas para cálculos de inteligência temporal, alocação de custos e análise de rentabilidade por segmento no Power BI.
Objetivo do Prompt
Desenvolver um conjunto de medidas DAX de produção que resolva os cálculos mais comuns de BI financeiro: YoY, YTD, PMPM, cálculo de margem por segmento, alocação de despesas indiretas e previsão linear no Power BI Desktop.
Exemplo Real de Uso
A rede de academias FitNação, com 22 unidades em SP e MG faturando R$ 18M/ano, tem seu Power BI com apenas medidas básicas de SOMA e CONTAGEM. O analista de BI gasta 3 dias por mês em Excel fazendo os cálculos de variação YoY e margem de contribuição por unidade que poderiam ser automáticos.
Prompt
Crie um conjunto completo de medidas DAX para o modelo de dados de [NOME DA EMPRESA], setor de [SETOR], com tabelas: [FATO_VENDAS], [DIM_TEMPO], [DIM_PRODUTO], [DIM_CLIENTE], [DIM_FILIAL].
**Grupo 1 — Inteligência Temporal:**
```dax
// Receita no Período Selecionado
Receita Total = SUMX(FATO_VENDAS, FATO_VENDAS[Quantidade] * FATO_VENDAS[PrecoUnitario])
// Receita Mesmo Período Ano Anterior (SAMEPERIODLASTYEAR)
Receita Ano Anterior =
CALCULATE(
[Receita Total],
SAMEPERIODLASTYEAR(DIM_TEMPO[Data])
)
// Variação Year-over-Year em %
Variação YoY % =
DIVIDE([Receita Total] - [Receita Ano Anterior], [Receita Ano Anterior], BLANK())
// Receita YTD (acumulado no ano)
Receita YTD =
CALCULATE([Receita Total], DATESYTD(DIM_TEMPO[Data]))
// Receita MTD (acumulado no mês)
Receita MTD =
CALCULATE([Receita Total], DATESMTD(DIM_TEMPO[Data]))
// Média Móvel 3 Meses
Média Móvel 3M =
CALCULATEX(
DATESINPERIOD(DIM_TEMPO[Data], LASTDATE(DIM_TEMPO[Data]), -3, MONTH),
[Receita Total]
) / 3
```
**Grupo 2 — Margem e Rentabilidade:**
```dax
// Custo dos Produtos Vendidos
CMV = SUMX(FATO_VENDAS, FATO_VENDAS[Quantidade] * RELATED(DIM_PRODUTO[CustoUnitario]))
// Margem Bruta em R$
Margem Bruta = [Receita Total] - [CMV]
// Margem Bruta %
Margem Bruta % = DIVIDE([Margem Bruta], [Receita Total], 0)
// Margem de Contribuição por Segmento
MC por Segmento =
CALCULATE(
[Margem Bruta],
ALLEXCEPT(DIM_PRODUTO, DIM_PRODUTO[Segmento])
)
// Ranking de Produtos por Margem (Pareto)
Ranking Margem =
RANKX(ALL(DIM_PRODUTO[Produto]), [Margem Bruta], , DESC, DENSE)
```
**Grupo 3 — Análise de Clientes e Tickets:**
```dax
// Clientes Únicos no Período
Clientes Ativos = DISTINCTCOUNT(FATO_VENDAS[ClienteID])
// Ticket Médio
Ticket Médio = DIVIDE([Receita Total], DISTINCTCOUNT(FATO_VENDAS[PedidoID]), 0)
// Clientes Novos (primeira compra no período)
Clientes Novos =
CALCULATEX(
FILTER(
VALUES(FATO_VENDAS[ClienteID]),
CALCULATE(MIN(FATO_VENDAS[DataVenda])) >= MIN(DIM_TEMPO[Data])
),
COUNTROWS(VALUES(FATO_VENDAS[ClienteID]))
)
// Clientes Recorrentes
Clientes Recorrentes = [Clientes Ativos] - [Clientes Novos]
// Taxa de Recompra
Taxa Recompra % = DIVIDE([Clientes Recorrentes], [Clientes Ativos], 0)
```
**Grupo 4 — Metas e Semáforo:**
```dax
// % de Atingimento da Meta
Ating. Meta % = DIVIDE([Receita Total], SUM(METAS[MetaReceita]), 0)
// Status Semáforo (para formatação condicional)
Status Meta =
SWITCH(
TRUE(),
[Ating. Meta %] >= 1, "Verde",
[Ating. Meta %] >= 0.85, "Amarelo",
"Vermelho"
)
// Forecast Linear até fim do mês
Forecast Mês =
VAR DiasDecorridos = DATEDIFF(MIN(DIM_TEMPO[Data]), TODAY(), DAY)
VAR DiasTotais = DAY(EOMONTH(TODAY(), 0))
RETURN
DIVIDE([Receita MTD] * DiasTotais, DiasDecorridos, BLANK())
```
**Grupo 5 — Boas práticas DAX:**
- Sempre use DIVIDE() em vez de operador / para evitar erro de divisão por zero
- Prefira CALCULATE com filtros explícitos a CALCULATETABLE
- Use BLANK() como terceiro argumento de DIVIDE quando ausência é melhor que zero
- Variáveis (VAR) melhoram legibilidade e performance
- Documente cada medida com descrição no painel de propriedades
- Organize medidas em tabelas de medidas separadas (não em tabelas de dados)
**Entregue:** código DAX comentado para cada medida + explicação do que cada cálculo resolve no contexto de [SETOR].Como usar este prompt
- 1Cole o prompt diretamente no ChatGPT, Claude, Gemini ou qualquer assistente de IA.
- 2Personalize os campos entre colchetes [assim] com suas informações específicas.
- 3Para melhores resultados, forneça contexto adicional sobre seu caso de uso.
- 4Combine múltiplos prompts em uma conversa para resultados mais completos.
- 5Salve os prompts que mais usa para acesso rápido no futuro.
Prompts relacionados
Ver todosAnálise preditiva com Python: regressão e previsão de demanda
Constrói modelo preditivo de demanda usando scikit-learn e Prophet, com validação cruzada e deployment como API para uso no dia a dia do negócio.
Correlação de dados de marketing multicanal com atribuição de receita
Análise de correlação entre canais de marketing (Google, Meta, email, orgânico) e receita, com modelo de atribuição multi-touch para otimização de budget.
Cohort analysis completo: retenção, receita e comportamento de produto
Framework de análise de coorte para produtos digitais cobrindo retenção de usuários, receita por coorte, adoção de features e identificação de perfis de alto valor.
Cálculo de LTV para SaaS brasileiro: modelos, segmentação e impacto no growth
Framework completo para calcular Lifetime Value de SaaS com churn diferenciado por plano, correção por inflação brasileira e uso estratégico do LTV para decisões de CAC, pricing e cohorts de produto.
Explore outras categorias de prompts
Assine o AulasDeIA para desbloquear
Acesse 10.000+ prompts prontos para usar em qualquer profissão, além de todos os cursos da plataforma.
Cancele quando quiser. Sem multas.
