Starting December 3, join live sessions with database experts and the Microsoft product team to learn just how easy it is to get started
Learn moreGet certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now
Hello Power BI community
I have trouble with calculating default week by using Isfiltered (im not sure this is the right way to do)
I want my data from my table show the lastest 10 weeks as default, however, I also allow users to use the Week Filter in the left corner and select weeks that earlier than the lastest 10 weeks.
This is my column week so far :
Thanks you
Solved! Go to Solution.
Hi @Anonymous
You can try to build an unrelated table to build the week slicer and build measures to calculate the value in matrix.
My Sample:
YearWeek is a caluclated column.
YearWeek = YEAR(Sales[Date])*100+WEEKNUM(Sales[Date],2)
Slicer table:
Table = VALUES(Sales[YearWeek])
Build a slicer by this table and build measures to calculate the value as below.
Value =
VAR _SelectValue = VALUES('Table'[YearWeek])
VAR _CURRENTYearWeek = YEAR(TODAY())*100+WEEKNUM(TODAY(),2)
VAR _RESULT1 = CALCULATE(SUM(Sales[Sales]),FILTER(Sales,Sales[YearWeek] in _SelectValue))
VAR _RESULT2 = CALCULATE(SUM(Sales[Sales]),FILTER(Sales,Sales[YearWeek]>_CURRENTYearWeek-10))
RETURN
IF(ISFILTERED('Table'[YearWeek]),_RESULT1,_RESULT2)
Result:
By default my matrix will show values in last 10 weeks.
It can show the week I select in slicer as well.
Best Regards,
Rico Zhou
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Hi @Anonymous
You can try to build an unrelated table to build the week slicer and build measures to calculate the value in matrix.
My Sample:
YearWeek is a caluclated column.
YearWeek = YEAR(Sales[Date])*100+WEEKNUM(Sales[Date],2)
Slicer table:
Table = VALUES(Sales[YearWeek])
Build a slicer by this table and build measures to calculate the value as below.
Value =
VAR _SelectValue = VALUES('Table'[YearWeek])
VAR _CURRENTYearWeek = YEAR(TODAY())*100+WEEKNUM(TODAY(),2)
VAR _RESULT1 = CALCULATE(SUM(Sales[Sales]),FILTER(Sales,Sales[YearWeek] in _SelectValue))
VAR _RESULT2 = CALCULATE(SUM(Sales[Sales]),FILTER(Sales,Sales[YearWeek]>_CURRENTYearWeek-10))
RETURN
IF(ISFILTERED('Table'[YearWeek]),_RESULT1,_RESULT2)
Result:
By default my matrix will show values in last 10 weeks.
It can show the week I select in slicer as well.
Best Regards,
Rico Zhou
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
@Anonymous
You can create a week type in you table and use that. You can default on last 10 weeks
Week Type = Switch( True(),
[start week]<=Today() && [end date]>=Today()-70,"Last 10 Week" ,
[Week Name]
)
Other columns
Week Start = 'Date'[Date]+-1*WEEKDAY('Date'[Date],2)+1
Week End = 'Date'[Date]+ 7-1*WEEKDAY('Date'[Date],2)
Week Number = WEEKNUM([Date],2)
Week = if('Date'[Week Number]<10,'Date'[Year]*10 & 'Date'[Week Number],'Date'[Year]&'Date'[Week Number])
Hello @amitchandak
Thanks you for your answer but this is not what im looking for :
I want an output of every single week for the last 10 weeks like this below
And still keep my week filtered if I needed to find weeks that further than last 10 weeks.
Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.
March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.
User | Count |
---|---|
94 | |
92 | |
83 | |
71 | |
49 |
User | Count |
---|---|
143 | |
120 | |
110 | |
59 | |
57 |