Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more
Hi Everyone,
I'm a bit stuck on something. I'm trying to find previous period average sales. This on its own i've been able to do, however, where i'm getting stuck is i need to find average sales for the [date range selected on slicer] minus 7 days.
For example:
If i select date range as 25/09/20 - 30/09/20, then the 'previous period' would be 18/09/20 - 24/09/20. So it's the min date of what the user selects minus 7 days.
I tried that logic but i think i'm using the incorrect functions because i keep getting errors.
Is anyone able to shed some light on what approach i need to take?
Thanks guys!
Hi @Anonymous,
You can also take a look at the following blog to use the date function to manually define the filter range to calculate the rolling average:
Time Intelligence "The Hard Way" (TITHW)
Regards,
Xiaoxin Sheng
@Anonymous , Try a trailing 7 days measure. But use date table with that
Trailing 7 days =CALCULATE(SUM(Sales[Sales Amount]),dateadd('Date'[Date],-7,DAY))
Hi @amitchandak - I keep getting the same average as the time period selected, rather than the average for the previous period. This is what i'm using:
var average = SUMMARIZE('FactSales', 'Date'[Date], "AverageAmount", SUM('FactSales'[SalesValue])), [AverageAmount])
The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!
| User | Count |
|---|---|
| 38 | |
| 38 | |
| 37 | |
| 28 | |
| 28 |
| User | Count |
|---|---|
| 124 | |
| 89 | |
| 73 | |
| 66 | |
| 65 |