cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
rafael_pereira
Frequent Visitor

Using DAX variables in the filter function

Hello,

I'm trying to create a measure and at a given moment I use the following expression:

 

Top =
VAR Nth = 2
VAR Category = ALLSELECTED(Table[Category])
VAR Sales =
ADDCOLUMNS(
VALUES(Table[Category]),,"Rank",RANKX(Category,[Total Sales]))

VAR FilterNThCategory = FILTER(Sales , [Rank] = Nth)
VAR NthLineName = MINX(FilterNThLine,Table[Category])
VAR Subtop = CALCULATE([Total Sales],Table[Category] = NthLineName)

return Subtop

 

in theory the return of the variable "NthLineName" is a string, but when I use it inside the FILTER function, I don't get the expected result. However, when I replace "NthLineName" with the string "Cars", it works perfectly.

Does the FILTER function not support the use of variables or am I doing something wrong? is there any way to get around it?

thank you very much in advance

 

1 ACCEPTED SOLUTION
v-cazheng-msft
Community Support
Community Support

Hi @rafael_pereira 

 

Please make a little bit change to your measure.

Top =

VAR Nth = 2

VAR Category =

    ALLSELECTED ( 'Table'[Category] )

VAR Sales_ =

    ADDCOLUMNS(

        VALUES ('Table'[Category]),

        "Rank", RANKX ( Category, [Total Sales] )

    )

VAR FilterNThCategory =

    FILTER(Sales_,[Rank]=Nth)

VAR NthLineName =

    MINX(FilterNThCategory,'Table'[Category])

VAR Subtop =

    CALCULATE ( [Total Sales], 'Table'[Category] =NthLineName)

RETURN

    Subtop

 

Result should look like this:

vcazhengmsft_0-1636685613141.png

Attached the pbix file as reference.

 

Best Regards,

Community Support Team _ Caiyun

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. If you still have problems on it, please feel free to let us know. Thanks a lot!

 

View solution in original post

2 REPLIES 2
v-cazheng-msft
Community Support
Community Support

Hi @rafael_pereira 

 

Please make a little bit change to your measure.

Top =

VAR Nth = 2

VAR Category =

    ALLSELECTED ( 'Table'[Category] )

VAR Sales_ =

    ADDCOLUMNS(

        VALUES ('Table'[Category]),

        "Rank", RANKX ( Category, [Total Sales] )

    )

VAR FilterNThCategory =

    FILTER(Sales_,[Rank]=Nth)

VAR NthLineName =

    MINX(FilterNThCategory,'Table'[Category])

VAR Subtop =

    CALCULATE ( [Total Sales], 'Table'[Category] =NthLineName)

RETURN

    Subtop

 

Result should look like this:

vcazhengmsft_0-1636685613141.png

Attached the pbix file as reference.

 

Best Regards,

Community Support Team _ Caiyun

 

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly. If you still have problems on it, please feel free to let us know. Thanks a lot!

 

AlexisOlson
Super User
Super User

Does it help if you replace VALUES ( Table[Category] ) with Category?

 

If not, then can you provide some example data and desired results to test against?

Helpful resources

Announcements
Microsoft Build 768x460.png

Microsoft Build is May 24-26. Have you registered yet?

Come together to explore latest innovations in code and application development—and gain insights from experts from around the world.

charticulator_carousel_with_text (1).png

Charticulator Design Challenge

Put your data visualization and design skills to the test! This exciting challenge is happening now through May 31st!

May UG Leader Call Carousel 768x460.png

What difference can a User Group make for you?

At the monthly call, connect with other leaders and find out how community makes your experience even better.

Power BI Dev Camp Session 22 768x460.jpg

Check it out!

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

Top Solution Authors