Showing results for 
Search instead for 
Did you mean: 
Frequent Visitor

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)

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]))


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

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
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
CALCULATE([net] ,DATESBETWEEN('Date'[Date],_min,_max))



Power BI — Month on Month with or Without Time Intelligence

Power BI Features || Datamarts: || Field Parameters :
Time Intelligence Decoded : || 50+Power Query List Functions : Learn Power Query List
Did I answer your question? Mark my post as a solution! Appreciate your Kudos !! Proud to be a Super User! !!
Dashboard of My Blogs !! Connect on Linkedin !! Subscribe to my youtube Channel !!
Want To Learn Power BI | Beginners !! Advance Concepts !! Power BI For Tableau User !!

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

September Update

Check it Out!

Click here to learn more about the September 2022 updates!

Power BI Dev Camp Session 26

Check it Out!

Mark your calendars and join us on Thursday, September 29 at 11a PDT for a great session with Ted Pattison!

Top Solution Authors