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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
yonk
Regular Visitor

Last 12 months average

Hi,

 

I am trying to calculate average last 12 months debtor days.

 

The step by step calculation is:

A. average last 3 months sales

B. debtor closing balance

C. days in count

D. debtor days for the month = ( B / (A/C))

E. debtor days last 12 months = average of D for past 12 months.

 

Now I have got A through D measures working but unable to get a measure working for E.

 

Because A through D are all measures I couldn't simply use sum(D, datesbetween). Couldn't figure out an alternative.

 

Thanks for helping

Regards,

Yon

 

1 ACCEPTED SOLUTION

@yonk , I think this type of measure should work

 

Rolling 12 = calculate(AverageX(Values('Date'[MONTH Year]),[Debtor Days]),DATESINPERIOD('Date'[Date ],MAX('Date'[Date ]),-12,MONTH))

 

You can check for number of month to only get it when 12 months are there

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

View solution in original post

4 REPLIES 4
yonk
Regular Visitor

Hi @amitchandak ,

 

I might not have explained myself clearly so I have screenshot a replicate in excel.

Basically my DAX formula in PowerBI is at the top (highlighted green & working fine) but I'm scratching my head on what the DAX formula needs to be for G(yellow highlighted). In simple terms, G needs to be a rolling 12 months average of F. I don't think the suggested formula gave me that answer.

yonk_2-1656593065636.png

 

 

Thanks for the help

Regards,

yonk

 

 

 

@yonk , I think this type of measure should work

 

Rolling 12 = calculate(AverageX(Values('Date'[MONTH Year]),[Debtor Days]),DATESINPERIOD('Date'[Date ],MAX('Date'[Date ]),-12,MONTH))

 

You can check for number of month to only get it when 12 months are there

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

Thank you very much this seems to work!

amitchandak
Super User
Super User

@yonk , if you need sum till month level and then take Average then

 

example

 

Rolling 12 = calculate(AverageX(Values('Date'[MONTH Year]),CALCULATE(sum(Sales[Sales Amount]))),DATESINPERIOD('Date'[Date ],MAX('Date'[Date ]),-12,MONTH))

 

Rolling Months Formula: https://youtu.be/GS5O4G81fww

Average of Rolling, Average of Snapshots: https://youtu.be/_pZRdLAJxxA

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
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!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

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

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 Solution Authors