Forum Discussion

tropic's avatar
tropic
Frequent Visitor
3 years ago
Solved

Growth Rate Calculation Over Time

Hi,

 

I have a dataset from 2017-2023. I wanted to be able to see the sales growth % of 2022 vs 2017 or any other year that is not just the previous year. How am I able to get that?

  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi tropic ,

     

    According to your description, here are my steps you can follow as a solution.

    (1) This is my test data.  

    (2)We can create two tables (Table 2 and Table 3) with the year fields of both tables as slicers.

    Table 2 = DISTINCT(SELECTCOLUMNS('Table',"Year",YEAR('Table'[date])))
    Table 3 = DISTINCT(SELECTCOLUMNS('Table',"Year",YEAR('Table'[date])))

    (3) We can create a measure to calculate the Growth Rate for the two years selected in the slicer.

     

    Measure = 
    var _s1=SELECTEDVALUE('Table 2'[Year])
    var _s2=SELECTEDVALUE('Table 3'[Year])
    var _year1=CALCULATE(SUM('Table'[sales]),FILTER(ALL('Table'),YEAR('Table'[date])=_s1))
    var _year2=CALCULATE(SUM('Table'[sales]),FILTER(ALL('Table'),YEAR('Table'[date])=_s2))
    return DIVIDE(_year1-_year2,_year2,0)

     

    (4) Then the result is as follows.

     

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. Thank you.

     

    Best Regards,

    Neeko Tang

    If this post  helps, then please consider Accept it as the solution  to help the other members find it more quickly. 

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi tropic ,

     

    According to your description, here are my steps you can follow as a solution.

    (1) This is my test data.  

    (2)We can create two tables (Table 2 and Table 3) with the year fields of both tables as slicers.

    Table 2 = DISTINCT(SELECTCOLUMNS('Table',"Year",YEAR('Table'[date])))
    Table 3 = DISTINCT(SELECTCOLUMNS('Table',"Year",YEAR('Table'[date])))

    (3) We can create a measure to calculate the Growth Rate for the two years selected in the slicer.

     

    Measure = 
    var _s1=SELECTEDVALUE('Table 2'[Year])
    var _s2=SELECTEDVALUE('Table 3'[Year])
    var _year1=CALCULATE(SUM('Table'[sales]),FILTER(ALL('Table'),YEAR('Table'[date])=_s1))
    var _year2=CALCULATE(SUM('Table'[sales]),FILTER(ALL('Table'),YEAR('Table'[date])=_s2))
    return DIVIDE(_year1-_year2,_year2,0)

     

    (4) Then the result is as follows.

     

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. Thank you.

     

    Best Regards,

    Neeko Tang

    If this post  helps, then please consider Accept it as the solution  to help the other members find it more quickly. 

  • Hi,

    Your question is not clear.  Will you be sleecting 2 yaers in the slicer for which you want to calculate the growth rates?  If my understanding is correct, then share some data that can be pasted in an MS Excel file.