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

Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.

Reply
Thomasshepherd2
Frequent Visitor

using selected value to return a list of customers between dates

Hi All

 

I am trying to show a rolling 12months of customers in a Matrix visual where the enddate is set by slicer and the startdate is always 12months before 

 

this is what i have 

NewBizCustomers =

VAR SelectedDate = LASTDATE(ALLSELECTED('Calendar'[Date]))

VAR SelectedYear = YEAR(SelectedDate)

VAR SelectedYearminus1 = YEAR(SelectedDate)-1

VAR SelectedMonth = MONTH(SelectedDate)

VAR SelectedDay = DAY(SelectedDate)

VAR CurrentYear = YEAR(TODAY())

 

VAR StartDate =

  DATE(SelectedYearminus1,SelectedMonth,SelectedDay)

VAR EndDate =

        DATE(SelectedYear , SelectedMonth, SelectedDay)

Var Result =

FILTER(

    VALUES('List of ACTs'[CustomerName]),DATESBETWEEN('List of ACTs'[Customer Startdate], StartDate,EndDate)

)

RETURN

Result

 

however, this doesn’t filter the customer name.

 

I have looked through Forums but not having much luck - any help is very much appreciated.

 

EDIT:
here is screenshot of the data

i want it so that the startdate is always 12months behind the slicer 

eg the able nz would not be on this list unless the date was 7/1/22

 

Thomasshepherd2_0-1731031542874.png

 

1 ACCEPTED SOLUTION
Thomasshepherd2
Frequent Visitor

Found a way to do it by creating the following measure 

CustomerInRolling12Months =
VAR SelectedDate = LASTDATE(ALLSELECTED('Calendar'[Date]))
VAR StartDate = EDATE(SelectedDate, -12) + 1
VAR EndDate = SelectedDate

RETURN
IF(
MIN('List of ACTs'[Customer Startdate]) >= StartDate &&
MIN('List of ACTs'[Customer Startdate]) <= EndDate,
1,
0
)

 

 

Then adding this to the visual filters and settings it to only show 1 as the result 

 

Cheers all

View solution in original post

4 REPLIES 4
Thomasshepherd2
Frequent Visitor

Found a way to do it by creating the following measure 

CustomerInRolling12Months =
VAR SelectedDate = LASTDATE(ALLSELECTED('Calendar'[Date]))
VAR StartDate = EDATE(SelectedDate, -12) + 1
VAR EndDate = SelectedDate

RETURN
IF(
MIN('List of ACTs'[Customer Startdate]) >= StartDate &&
MIN('List of ACTs'[Customer Startdate]) <= EndDate,
1,
0
)

 

 

Then adding this to the visual filters and settings it to only show 1 as the result 

 

Cheers all

FreemanZ
Super User
Super User

hi @Thomasshepherd2 ,

 

it seems you are writing a calculated table, which is not supposed to respond to visual behaviors (like slicer).

Ritaf1983
Super User
Super User

Hi @Thomasshepherd2 

Please provide a workable sample data and your expected result from that. It is hard to figure out what you want to achieve from the description alone.  

https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-...

 

If this post helps, then please consider Accepting it as the solution to help the other members find it more quickly.

Regards,
Rita Fainshtein | Microsoft MVP
https://www.linkedin.com/in/rita-fainshtein/
Blog : https://www.madeiradata.com/profile/ritaf/profile

Made an edit to the post showing how i am wanting to show the data.

 

Let me know if it is still unclear.

Helpful resources

Announcements
FabCon Global Hackathon Carousel

FabCon Global Hackathon

Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!

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.