Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
3 years ago
Solved

Calculation Based on Previous Row

Hi, 

I have a DAX formula that solves a an equation where I have two different columns and I am finding the difference between the previous row of one column and the current row of a different column

(EX: CUSTUM (Current Row) - IMPROVEMENT 1 (Previous Row)).

However, I am getting very stuck because when there would be a 0 value for improvement it would be replaced with the original value of Current Row. I am getting very stuck on how to create a DAX formula that If Improvement 1 value = 0 then the custum row will be the same value as the previous row. 

 

 

 

CURRENT TABLES 

 

Current Improvement          Custom 

           10                                  100

           12                                  90

            0                                   78

            5                                   100

            0                                   95

            10                                 100

 

 

 

*****I am hoping to make 

 

 

Current Improvement          Custom 

           10                                  100

           12                                   90

            0                                    78

            5                                    78

            0                                    73

            10                                  73

 

 

Thank you very much for the help!! 🙂 

 

  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi Anonymous ,

     

    Try this formula:

    Column = 
    var start_custom = CALCULATE(SUM('Table'[Custom]),FILTER('Table','Table'[Index]=1))
    var cumulative_CI = CALCULATE(SUM('Table'[Current Improvement]),FILTER('Table','Table'[Index]<=EARLIER('Table'[Index])-1))
    return
    start_custom-cumulative_CI

     

    Best Regards,

    Jay

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous ,

     

    Try this formula:

    Column = 
    var start_custom = CALCULATE(SUM('Table'[Custom]),FILTER('Table','Table'[Index]=1))
    var cumulative_CI = CALCULATE(SUM('Table'[Current Improvement]),FILTER('Table','Table'[Index]<=EARLIER('Table'[Index])-1))
    return
    start_custom-cumulative_CI

     

    Best Regards,

    Jay

    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank You!!