Forum Discussion

tomislav_mi's avatar
tomislav_mi
Helper II
6 years ago
Solved

Calculating a difference between two rows as a calculated column

Hey guys,

Could you please help me out to get the difference between rows as a calculated column considering a few parameters?

I would need to calculate the difference between sales, having in mind that I need to do it for each Account group separately. I was trying to do it with EARLIER, PREVIOUSMONTH, PARARALEPERIOD but always stopped somewhere in the process. 

This is an example of the columns and desired outcome.

AccountDateSalesCalculated column
A9/1/2012120 
A10/1/201215030
A11/1/20121500
A12/1/2012100-50
B9/1/201210 
B10/1/20122010
B11/1/20123010
B12/1/20124010


Thank you!


  • Probably something like below. PBIX attached.

     

    Column = 
        VAR __Previous = 
            MAXX(
                FILTER(
                    ALL('Table'),
                    [Account] = EARLIER([Account]) &&
                        [Date] < EARLIER([Date])
                ),
                [Date]
            )
    RETURN
        [Sales] - 
        MAXX(
            FILTER(
                ALL('Table'),
                [Account] = EARLIER([Account]) &&
                [Date] = __Previous
            ),
            [Sales]
        )

     

3 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    Probably something like below. PBIX attached.

     

    Column = 
        VAR __Previous = 
            MAXX(
                FILTER(
                    ALL('Table'),
                    [Account] = EARLIER([Account]) &&
                        [Date] < EARLIER([Date])
                ),
                [Date]
            )
    RETURN
        [Sales] - 
        MAXX(
            FILTER(
                ALL('Table'),
                [Account] = EARLIER([Account]) &&
                [Date] = __Previous
            ),
            [Sales]
        )

     

    • tomislav_mi's avatar
      tomislav_mi
      Helper II

      Thank you Greg_Deckler .

      Works perfectly in PowerBI. I also use same Excel data model and when I try to use the same approach in Power Pivot it doesn't work there. There it calculates the difference only for the first row?

      Do you have any idea why this could be the case? 

      Tomislav