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

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Request now

Reply
Pfoster
Resolver I
Resolver I

Filter in Selectcolumns not working

Hello all,

I am struggeling with an issue in my modell: 
I would like to create a table within my modell which takes a specific filter into account. 

For my table, I am using this code:

KundenArtikelKombis = 
SELECTCOLUMNS(
    FILTER('Datacube (2)',
    'Datacube (2)'[Sales in KG]>SalesGrenze[SalesGrenze Wert]),
    "Prod_Cust", 'Datacube (2)'[Prod_Cust],
    "Comp_Material_Key", 'Datacube (2)'[Comp_Material_Key],
    "VergleichsSchlüssel", 'Datacube (2)'[SelectedVergleichsschluessel],
    "Customer Shipped to", 'Datacube (2)'[Customer shipped to],
    "Sales in MT",'Datacube (2)'[Sales MT],
    "Net Turnover", [NetSales],
    "ASP net", [ASPnet],
    "Margin", [ICL_Total_STCMA],
    "Entity_",[Entity (selling)],
    "Material_",[Material code],
    "Year_",[Year]
)

The "SalesGrenze[SalesGrenze Wert]" is a Slicer, where the user can select the minimum sales volume:

SalesGrenze Wert = SELECTEDVALUE('SalesGrenze'[SalesGrenze])

But when using the outcome of the table in a scatter plot, the "Sales Grenze" - Filter has no effect:

Pfoster_0-1749130079184.png

this small dots should have been excluded and not shown in that chart. Why is the filter not working? In my modell, it is not bound to any other table:

Pfoster_1-1749130172040.png

Thank you for having a look and giving some advice, how to fix this issue. 

 

 

1 ACCEPTED SOLUTION
DataNinja777
Super User
Super User

Hi @Pfoster,

 

The issue arises because calculated tables like the one you're using with SELECTCOLUMNS and FILTER are evaluated at data refresh time, not at report interaction time. This means the value from the slicer (SalesGrenze[SalesGrenze Wert]) isn't applied dynamically when users interact with the report. Although SELECTEDVALUE works fine inside a measure and can reflect the slicer selection, calculated tables are static and cannot respond to changes in filter context after they're created. That's why your scatter plot still shows the small dots that should have been filtered out based on the SalesGrenze slicer.

To resolve this, you should switch to using a measure that filters the data within the visual itself. You can create a measure like this:

ShowInChart = 
IF (
    [Sales in KG] > SELECTEDVALUE('SalesGrenze'[SalesGrenze]),
    1,
    0
)

Then apply this measure as a visual-level filter on your scatter plot, setting it to only show values where ShowInChart = 1. This allows the slicer to affect the chart properly, because measures are evaluated dynamically based on the current filter context. The calculated table approach won’t work in this case if you're expecting interactive filtering.

 

Best regards,

View solution in original post

3 REPLIES 3
DataNinja777
Super User
Super User

Hi @Pfoster,

 

The issue arises because calculated tables like the one you're using with SELECTCOLUMNS and FILTER are evaluated at data refresh time, not at report interaction time. This means the value from the slicer (SalesGrenze[SalesGrenze Wert]) isn't applied dynamically when users interact with the report. Although SELECTEDVALUE works fine inside a measure and can reflect the slicer selection, calculated tables are static and cannot respond to changes in filter context after they're created. That's why your scatter plot still shows the small dots that should have been filtered out based on the SalesGrenze slicer.

To resolve this, you should switch to using a measure that filters the data within the visual itself. You can create a measure like this:

ShowInChart = 
IF (
    [Sales in KG] > SELECTEDVALUE('SalesGrenze'[SalesGrenze]),
    1,
    0
)

Then apply this measure as a visual-level filter on your scatter plot, setting it to only show values where ShowInChart = 1. This allows the slicer to affect the chart properly, because measures are evaluated dynamically based on the current filter context. The calculated table approach won’t work in this case if you're expecting interactive filtering.

 

Best regards,

Thank you, this measure works fine and is exactly doing what I have expected. Perfect!

Rupak_bi
Super User
Super User

Try this:

KundenArtikelKombis = 
SELECTCOLUMNS(
    FILTER('Datacube (2)',
    'Datacube (2)'[Sales in KG]>SELECTEDVALUE('SalesGrenze'[SalesGrenze])),
    "Prod_Cust", 'Datacube (2)'[Prod_Cust],
    "Comp_Material_Key", 'Datacube (2)'[Comp_Material_Key],
    "VergleichsSchlüssel", 'Datacube (2)'[SelectedVergleichsschluessel],
    "Customer Shipped to", 'Datacube (2)'[Customer shipped to],
    "Sales in MT",'Datacube (2)'[Sales MT],
    "Net Turnover", [NetSales],
    "ASP net", [ASPnet],
    "Margin", [ICL_Total_STCMA],
    "Entity_",[Entity (selling)],
    "Material_",[Material code],
    "Year_",[Year]
)


Regards
Rupak
FOLLOW ME : https://www.linkedin.com/in/rupaksar/

Helpful resources

Announcements
November Power BI Update Carousel

Power BI Monthly Update - November 2025

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

Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

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.

Top Solution Authors