Ir para conteúdo
  • 0

Acumulado de cada ano e acumulado - último período acumulado


kleyton
Ir para solução Solucionado por kleyton ,

Pergunta

  • Alunos

Boa tarde

Pessoal, tava verificando algumas possibilidades de gráfico para meus cálculos de inflação. 

image.png.6caf619dd6ca78f7d56f671ba68d9048.png

Esses valores nos meses é obtido via multiplicação dentro da própria coluna. Isso na coluna da direita. No entanto, a multiplicação ocorre na coluna da esquerda. E é assim: A coluna da direita, em cada, linha determina os últimos 12 meses.

O cálculo:

IPCA Acumulado =
 
VAR acumulado =
CALCULATE(
    [IPCA RowByRow],
        DATESINPERIOD(_dCalendario[Data],
             LASTDATE(_dCalendario[Data]),-12,MONTH)
) -1
 
VAR P2 =
IF([IPCA Valor Multiplicador]<>BLANK(),
      acumulado
)
 
 
RETURN
 
P2

Como eu adiciono um calendário em "linhas", obviamente também exibe o resultado dos últimos 12 meses "no ano". Ou seja, em 2023 (1,37% até o momento); em 2022 (5,78%) e assim por diante. A minha dificuldade é como criar uma espécie de "last year" pegando apenas esse resultado em cada ano e ano nos últimos 12 meses. Posteriormente, criar um cálculo assim: Ano atual (últimos 12 meses no ano) - últimos 12 meses do ano anterior --> Ex: 2023 (1,37%) - 2022 (5,78%) = - 4,41%.

Agradeço desde já qualquer ajuda.

 

 

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução
2 horas atrás, Reginaldo Batista disse:

Olá @kleyton

segue uma proposta:

 

Variação IPCA Acumulado = 

VAR ipcacurrent =
    CALCULATE(
        [IPCA Acumulado],
        DATESINPERIOD(
            '_dCalendario'[Data],
            LASTDATE('_dCalendario'[Data]),
            -12,
            MONTH
        )
    )

VAR ipcaprevious =
    CALCULATE(
        [IPCA Acumulado],
        SAMEPERIODLASTYEAR(
            DATESINPERIOD(
                '_dCalendario'[Data],
                LASTDATE('_dCalendario'[Data]),
                -12,
                MONTH
            )
        )
    )

RETURN ipcacurrent - ipcaprevious


caso a solução tenha atendido sua necessidade, favor marcar como solução
Att.

Reginaldo Batista - Cambará PR

Cara, você é um gênio.. rsrsrsrs

Deu certo 99,99%. Acredito que é possível fazer com o max date p/ pegar sempre dezembro. No caso, é anual. Vou tentar mais depois. 

VAR atual = CALCULATE(
    [IPCA RowByRow],
        DATESINPERIOD(_dCalendario[Data],
             LASTDATE(_dCalendario[Data]),-12,MONTH)
) -1
 
VAR previous = CALCULATE(
    [IPCA RowByRow],
      SAMEPERIODLASTYEAR(  
        DATESINPERIOD(_dCalendario[Data],
             LASTDATE(_dCalendario[Data]),-12,MONTH)
      )      
) -1
 
VAR calc =  
(atual-previous)/previous
 
RETURN
IF([IPCA Valor Multiplicador]<>BLANK(),
      calc
)

Muito obrigado...

  • Like 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Olá @kleyton

segue uma proposta:

 

Variação IPCA Acumulado = 

VAR ipcacurrent =
    CALCULATE(
        [IPCA Acumulado],
        DATESINPERIOD(
            '_dCalendario'[Data],
            LASTDATE('_dCalendario'[Data]),
            -12,
            MONTH
        )
    )

VAR ipcaprevious =
    CALCULATE(
        [IPCA Acumulado],
        SAMEPERIODLASTYEAR(
            DATESINPERIOD(
                '_dCalendario'[Data],
                LASTDATE('_dCalendario'[Data]),
                -12,
                MONTH
            )
        )
    )

RETURN ipcacurrent - ipcaprevious


caso a solução tenha atendido sua necessidade, favor marcar como solução
Att.

Reginaldo Batista - Cambará PR

  • Like 1
Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...