March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
Register NowGet certified in Microsoft Fabric—for free! For a limited time, the Microsoft Fabric Community team will be offering free DP-600 exam vouchers. Prepare now
Olá, tenho está tabela abaixo. E quero fazer uma média ponderada, olhando para entrada e saída.
ID | Status | Value | The amount |
1 | Input | R$ 20,00 | 4 |
2 | Exit | -4 | |
3 | Input | R$ 30,00 | 10 |
4 | Exit | -5 | |
5 | Input | R$ 10,00 | 2 |
6 | Exit | -2 | |
7 | Input | R$ 20,00 | 5 |
8 | Exit | -1 |
Eu consigo fazer no Excel, segue exemplo abaixo.
Quando eu coloco no Power BI fica aparecendo " dependência circular foi detectada"
Caso alguém consiga me ajudar, Obrigado 🙂
Solved! Go to Solution.
Boa tarde @EdsonGomes ,
Isto não é possível de atinguir em DAX uma vez que DAX não suporta calculos recorrentes, ou seja cálculos que utilizam na sua formula o valor anterior dessa mesma fórmula.
Isso poderá ser obtido através do Power Query, no entanto implica a criação de funções personalizadas.
.
https://www.thepoweruser.com/2019/07/01/recursive-functions-in-power-bi-power-query/
Veja o post abaixo
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsBoa tarde @EdsonGomes
Pode utilizar colunas calculadas ou medidas ver as duas soluções abaixo:
Colunas:
Balance =
CALCULATE (
SUM ( 'Table'[The amount] ),
FILTER ( 'Table', 'Table'[ID] <= EARLIER ( 'Table'[ID] ) )
)
average =
IF (
'Table'[Status] = "Input",
DIVIDE ( 'Table'[Value], 'Table'[Balance] ),
CALCULATE (
DIVIDE ( SUM ( 'Table'[Value] ), SUM ( 'Table'[Balance] ) ),
FILTER ( 'Table', 'Table'[ID] = EARLIER ( 'Table'[ID] ) - 1 )
)
)
Medidas:
average Total =
IF (
SELECTEDVALUE('Table'[Status]) = "Input",
DIVIDE ( SUM('Table'[Value]), [Balance Total]),
CALCULATE (
DIVIDE ( SUM ( 'Table'[Value] ), [Balance Total] ),
FILTER ( ALL('Table'[ID], 'Table'[Status], 'Table'[Value]), 'Table'[ID] = MIN ( 'Table'[ID] ) - 1 )
)
)
Balance Total =
CALCULATE (
SUM ( 'Table'[Amount] ),
FILTER ( ALLSELECTED('Table'[ID],'Table'[Status],'Table'[Amount]), 'Table'[ID] <= MIN ( 'Table'[ID] ) )
)
Ficheiro em anexo.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsMiguel, Obrigado por ajudar 🙂
Não resolveu.
Eu preciso que fique igual resultado do Excel, com todas as colunas.
[Saída)] = [Quantidade acumulada] * [Media Ponderada]
[Valor Acumulado] = Soma de Entrada e Saida.
[Media Ponderada] = [Valor Acumulado] / [Quantidade acumulada]
Em Excel é possivel, conforme exemplo.
Mais em Power Bi da erro: "dependência circular foi detectada"
Boa tarde @EdsonGomes ,
Isto não é possível de atinguir em DAX uma vez que DAX não suporta calculos recorrentes, ou seja cálculos que utilizam na sua formula o valor anterior dessa mesma fórmula.
Isso poderá ser obtido através do Power Query, no entanto implica a criação de funções personalizadas.
.
https://www.thepoweruser.com/2019/07/01/recursive-functions-in-power-bi-power-query/
Veja o post abaixo
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsOi @EdsonGomes , tudo bem contigo?
Gostaria de te ajudar nessa solução.
Você poderia me enviar seu contato no meu email: rodrigosantos2007@gmail.com
ok. Obrigado.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
Check out the November 2024 Power BI update to learn about new features.
User | Count |
---|---|
122 | |
98 | |
89 | |
73 | |
64 |
User | Count |
---|---|
138 | |
115 | |
115 | |
98 | |
98 |