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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
tkrupka
Resolver II
Resolver II

Filter a Matrix based on slicers/measures

I have a matrix and a couple of slicers.  

 

The slicers allow the user to pick the month and the year they want the report to end.

 

Then I have the following two measures:

Selected Report Month = SELECTEDVALUE('Calendar'[Month_Number])

Selected Report Year = SELECTEDVALUE('Calendar'[Year])

 

Now that I have my end of report setup, I have used measures to determine the start of the report:

Start Report Date Month = [Selected Report Month]+1

Start Report Date Year = [Selected Report Year] - 1

Report Start = DATE([Start Report Date Year], [Start Report Date Month], 1)

 

This give me a MM/DD/YYYY hh:mm:ss start date.

 

From here I finished my end report date:

Report End = EOMONTH([Report Start],11)+TIME(23,59,59)

 

 

So now I have the bounds of my report from Midnight on the 1st of a month until 23:59:29 on the last day of the 12th month.

 

So the question now is, how can I filter a matrix based on the [Report Start] and [Report End] measures?

 

 

My Power BI File

2 ACCEPTED SOLUTIONS
Greg_Deckler
Community Champion
Community Champion

Depends. Please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

 

You could create a filtering measure the reports back if a row in your matrix falls within the report start and end date but the specifics of that are tough to pin down without sample data.



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

Accomplished what I was trying to do.

 

 

Filter Month = IF(AND(MAX(Run_Data[Date])>=[Report Start Date Month],MAX(Run_Data[Date])<=[Report End Date]),1,2)
Filter Year = IF(AND(MAX(Run_Data[Date])>=[Report Start Date Year],MAX(Run_Data[Date])<=[Report End Date]),1,2)

Then I had to ensure that Sync Slicers was selected on the view tab. (Missed that)

 

Since I was setting the page up as static for a particular region, I was able to set up two matrix.

1st Matrix I set the Filter Month = 1

2nd Matrix I set the Filter Year = 1

 

 

Now I have:

Finished Product.JPG

 

Thanks @Greg_Deckler for leading me down the right path.

 

View solution in original post

4 REPLIES 4
Greg_Deckler
Community Champion
Community Champion

Depends. Please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

 

You could create a filtering measure the reports back if a row in your matrix falls within the report start and end date but the specifics of that are tough to pin down without sample data.



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...


@Greg_Deckler wrote:

Depends. Please see this post regarding How to Get Your Question Answered Quickly: https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

 

You could create a filtering measure the reports back if a row in your matrix falls within the report start and end date but the specifics of that are tough to pin down without sample data.


 

@Greg_Deckler 

 

So I was trying to figure out a way to do this.

 

I tried the following:

 

 

Report Year = FILTER(Run_Data, AND(Run_Data[Date] <= [Report Start Date Year], Run_Data[Date] >= [Report End]))

-OR-

Report End = FILTER(Run_Data, Run_Data[Date] >= [Report End])

 

 

And for both cases I get the error:

"The expression refers to multiple columns. Multiple columns cannot be converted to a scalar value."

Also tried without measures:

 

Report End = FILTER(Run_Data, Run_Data[Date]>=(SELECTEDVALUE('Calendar'[Date].[Year])))

 

Accomplished what I was trying to do.

 

 

Filter Month = IF(AND(MAX(Run_Data[Date])>=[Report Start Date Month],MAX(Run_Data[Date])<=[Report End Date]),1,2)
Filter Year = IF(AND(MAX(Run_Data[Date])>=[Report Start Date Year],MAX(Run_Data[Date])<=[Report End Date]),1,2)

Then I had to ensure that Sync Slicers was selected on the view tab. (Missed that)

 

Since I was setting the page up as static for a particular region, I was able to set up two matrix.

1st Matrix I set the Filter Month = 1

2nd Matrix I set the Filter Year = 1

 

 

Now I have:

Finished Product.JPG

 

Thanks @Greg_Deckler for leading me down the right path.

 

My Power Bi File

 

Here is the file I am using.

 

The dropdown selections are on the first page, and the matrix is on the third page.

Helpful resources

Announcements
August Power BI Update Carousel

Power BI Monthly Update - August 2025

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

August 2025 community update carousel

Fabric Community Update - August 2025

Find out what's new and trending in the Fabric community.