Advance your Data & AI career with 50 days of live learning, dataviz contests, hands-on challenges, study groups & certifications and more!
Get registeredGet Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more
 
					
				
		
I have monthly aggregated table and I want to do month over month calcualtions. How can I achieve that?
I have a date table linked to YearMonth but it is not helping.
I have to pull aggregated data on Month level otherwise the data size becomes too big.
PS: I have other category columns also so there are multiple rows with same YearMonth.
Thanks for helping
| YearMonth | Value | MOM% | 
| 201901 | 15 | |
| 201902 | 17 | 13% | 
| 201903 | 12 | -29% | 
| 201904 | 14 | 17% | 
| 201905 | 16 | 14% | 
| 201906 | 18 | 13% | 
| 201907 | 20 | 11% | 
| 201908 | 22 | 10% | 
| 201909 | 21 | -5% | 
| 201910 | 19 | -10% | 
| 201911 | 16 | -16% | 
| 201912 | 20 | 25% | 
| 202001 | 22 | 10% | 
| 202002 | 25 | 14%v | 
Hi @Anonymous ,
if you have a date table it is easier using PREVIOUSMONTH function. However, you can do it with this measure:
MOM % = 
VAR _currentMonth = SELECTEDVALUE('Table'[YearMonth])
VAR _previousMonth = CALCULATE(MAX('Table'[YearMonth]), FILTER(ALL('Table'), 'Table'[YearMonth] < _currentMonth))
VAR _previousValue = CALCULATE(SUM('Table'[Value]), FILTER(ALL('Table'), 'Table'[YearMonth] = _previousMonth))
VAR _currentValue = SUM('Table'[Value])
RETURN
    DIVIDE(_currentValue - _previousValue, _previousValue)
Hi @Anonymous ,
You need to have a calendar Table.
I have but it is not working this way.
 
					
				
				
			
		
Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!
Check out the October 2025 Power BI update to learn about new features.
 
            | User | Count | 
|---|---|
| 9 | |
| 5 | |
| 4 | |
| 3 | |
| 3 | 
| User | Count | 
|---|---|
| 23 | |
| 12 | |
| 11 | |
| 10 | |
| 9 |