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

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now! Learn more

Reply
ErickReiis
Helper I
Helper I

Filter Buttons

Hello everyone, everything good?

I need help performing a calculation that is not working.

I want to create a treemap that will show me the change in units sold compared to the previous month

I have the following DAX measurement for this variation calculation:

Divide( Units sold Current Month - Units sold Previous month;

previous month units)

And with that I have the variation of several points that sell this product.

The question I wanted to ask is the following:

I need to create buttons where, when clicking, the user can select a range of variations.

For example: By clicking on the 10% variation button, all points that vary between 5% and 10% will be displayed on the Treemap.


5% button would show the points of sale that ranged from 1% to 5% And so on.

 

I tried to use calculate to make these filters but it doesn't work.

 

Can you shed some light on how to achieve this goal?

Here is an example print:

 

I tried the following measure to extract the specific variation percentage from the treemap, but it doesn't work

 

Variation 25 % = CALCULATE( [Variation];
[Variation] > 0.10 && [Variation] <= 0.25)

2 REPLIES 2
amitchandak
Super User
Super User

@ErickReiis , what is your previous month's formula?

 

Example formula for current and last month

 

MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD('Date'[Date]))
last MTD Sales = CALCULATE(SUM(Sales[Sales Amount]),DATESMTD(dateadd('Date'[Date],-1,MONTH)))
last month Sales = CALCULATE(SUM(Sales[Sales Amount]),previousmonth('Date'[Date]))

 

MTD =
var _max = if(isfiltered('Date'),MAX( 'Date'[Date]) , today())
var _min = eomonth(_max,-1)+1 ,
return
CALCULATE([net] ,DATESBETWEEN('Date'[Date],_min,_max))

LMTD =
var _max1 = if(isfiltered('Date'),MAX( 'Date'[Date]) , today())
var _max = date(Year(_max1), month(_max1)-1, day(_max))
var _min = eomonth(_max1,-2)+1
return
CALCULATE([net] ,DATESBETWEEN('Date'[Date],_min,_max))

 

Last Month =
var _max1 = if(isfiltered('Date'),MAX( 'Date'[Date]) , today())
var _max = eomonth(_max1,-1)
var _min = eomonth(_max1,-2)+1
return
CALCULATE([net] ,DATESBETWEEN('Date'[Date],_min,_max))

 

 

Power BI — Month on Month with or Without Time Intelligence
https://medium.com/@amitchandak.1978/power-bi-mtd-questions-time-intelligence-3-5-64b0b4a4090e
https://www.youtube.com/watch?v=6LUBbvcxtKA

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

Hello @amitchandak , I'm using the following dax measure :

Calculate( [Units Sold]; previousmonth(lastdate([Calendar].[Data])

 

And i have a measure about the units sold on the current month.

 

Calculate(Units Sold; DATESMTD(LastDate(Data))

Helpful resources

Announcements
Power BI DataViz World Championships

Power BI Dataviz World Championships

The Power BI Data Visualization World Championships is back! Get ahead of the game and start preparing now!

December 2025 Power BI Update Carousel

Power BI Monthly Update - December 2025

Check out the December 2025 Power BI Holiday Recap!

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.