Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
nrenaud
Helper I
Helper I

Percent Change with multiple values between years

Hello! I am creating a matrix that consists of years (along the columns) and different values (along the rows - these also pull from different tables).

I am wondering if there is a way to create a percent change column from year to year for all of the different values. I am finding DAX to do this with one type of value, but I would like it to just calculate for each specific year, for all of the values (example: 2015 vs 2014, 2016 vs 2015, and so on).

This is what I am working with so far:

nrenaud_0-1592925225916.png

Ideally, I would like the percent change between each year column.

 

Thanks in advance! 🙂

3 REPLIES 3
nrenaud
Helper I
Helper I

@v-xuding-msft @amitchandak ,

Thank you both for possible options. I am wondering if these of these would work with multiple values? In the snapshot included in the post, I am actually pulling the values from 3 different tables, all of which are joined to my date table. I'm wondering if what I am trying to accomplish here is even possible (I am thinking kinda of like excel, where I could have a percent change column in between each year, for each of the values on the left). 

 

Thanks! 🙂

v-xuding-msft
Community Support
Community Support

Hi @nrenaud ,

 

The formulas that amitchandak suggests should work fine. You also could try DATEADD and SAMEPERIODLASTYEAR function to calculate the values of last year if you are using calendar table.

 

Measure = 
var thisYear = CALCULATE(SUM('Table'[Sales]))
var lastYear = CALCULATE(SUM('Table'[Sales]),DATEADD('Date'[Date],-1,YEAR))
return
DIVIDE(thisYear-lastYear,lastYear)
Measure 2_SAMEPERIODLASTYEAR = 
var thisYear = CALCULATE(SUM('Table'[Sales]))
var lastYear = CALCULATE(SUM('Table'[Sales]),SAMEPERIODLASTYEAR('Date'[Date]))
return
DIVIDE(thisYear-lastYear,lastYear)

2.PNG

 

https://www.youtube.com/watch?v=80i8rLQtO3o

https://www.youtube.com/watch?v=6vJIAJNTdG0

 

 

Best Regards,
Xue Ding
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
amitchandak
Super User
Super User

@nrenaud ,

Try with a separate date/year table

This Year = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])))
Last Year = CALCULATE(sum('order'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])-1))

diff = [This Year]-[Last Year]
diff %= divide([This Year]-[Last Year],[Last Year])

 

To get the best of the time intelligence function. Make sure you have a date calendar and it has been marked as the date in model view. Also, join it with the date column of your fact/s. Refer :
https://radacad.com/creating-calendar-table-in-power-bi-using-dax-functions
https://www.archerpoint.com/blog/Posts/creating-date-table-power-bi
https://www.sqlbi.com/articles/creating-a-simple-date-table-in-dax/

See if my webinar on Time Intelligence can help: https://community.powerbi.com/t5/Webinars-and-Video-Gallery/PowerBI-Time-Intelligence-Calendar-WTD-Y...


Appreciate your Kudos.

Share with Power BI Enthusiasts: Full Power BI Video (20 Hours) YouTube
Microsoft Fabric Series 60+ Videos YouTube
Microsoft Fabric Hindi End to End YouTube

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

Check out the November 2025 Power BI update to learn about new features.

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.

Top Kudoed Authors