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

Compete to become Power BI Data Viz World Champion! First round ends August 18th. Get started.

Reply
stsmith67
Frequent Visitor

Change Table Columns Based on Slicer Selection

Hi All,

 

I'm looking for a way to switch out columns in a table if a selection from a slicer is made.

Example
Year Slicer = 2021, show Columns A, B and C in my table or if
Year Slicer = 2022, show Columns A, B, D, G or if

Year Slicer = 2023, show Columns A, D, E, etc,

 

Has anyone found a way to do this while trying to use the same table and not have to resort to bookmarks using stacked tables?  Thanks.

12 REPLIES 12
MoonlightDaddy
New Member

Hello, has this been resolved?

@stsmith67 @MoonlightDaddy Did the screenshots and explanation solve the issue?

MohamedFowzan1
Responsive Resident
Responsive Resident

I understand there is no straight forward way to do this. I was able to achieve this without having to use bookmarks.

Here’s how I solved this:

  • Unpivot your columns (A, B, C, etc.) in Power Query to get a “long” format
  • Create a mapping table that specifies which columns (attributes) appear for each year, for example:
  • Create a YearSelection slicer table (distinct years).
  • Set up relationships so filtering flows like this:
    • YearSelection → YearColumnMapping → Columns Lookup → Fact Table
  • Build your matrix visual with:
    • Rows: USER
    • Columns: Attribute
    • Values: Value
  • When you select a year, only the corresponding columns appear in the matrix.

This method is fully dynamic, scalable, and avoids bookmarks or multiple stacked tables.

I have the PBIX of the model and visual so you can see exactly how the relationships and slicer interact but not able to attach it here. 

 

MohamedFowzan1_0-1753357475769.pngMohamedFowzan1_1-1753357505459.png

MohamedFowzan1_2-1753357531282.png

 

Hello, could you please elaborate the below part in your solution?

 

YearColumnMapping → Columns Lookup → Fact Table

 

What's the steps in 'Columns Lookup againt Fact Table'? Thanks a lot.

Posting screenshots of Paramters, dataset and DAX for better understanding:
Ref 1:

MohamedFowzan1_2-1753493571722.png

 



Ref2:
MohamedFowzan1_3-1753493615993.png

 

Ref3:
MohamedFowzan1_4-1753493654618.png

 

Ref4:
MohamedFowzan1_5-1753493678857.png

 



Ref5:
Actual table:
MohamedFowzan1_0-1753493463615.png


Ref6:
Unpivot table:

MohamedFowzan1_1-1753493501566.png

 

Ref7:
Relationships:
MohamedFowzan1_6-1753493719552.png


This would be a starting point for you to play around with actual data and build on it.



Sultanista
Frequent Visitor

Try this one 
https://www.youtube.com/watch?v=CHGmuzxu_BE (in the description there is a link to 1st video that might be needed to continue with this one)

MarkBattista
Regular Visitor

Is there a way to change within the select statement? For example, select if 1=1 then column A vs B , column 2, if x=y then C vs D, column 4???  

 

 

 

 

 

 

Sahir_Maharaj
Super User
Super User

Hello @stsmith67,

 

You can achieve this using the "Switch" function in DAX:

 

Selected Columns = 
SWITCH (
    SELECTEDVALUE ( 'Year'[Year] ),
    2021, SELECTCOLUMNS ( Table, "A", [A], "B", [B], "C", [C] ),
    2022, SELECTCOLUMNS ( Table, "A", [A], "B", [B], "D", [D], "G", [G] ),
    2023, SELECTCOLUMNS ( Table, "A", [A], "D", [D], "E", [E] ),
    BLANK()
)

Did I answer your question? Mark my post as a solution, this will help others!

If my response(s) assisted you in any way, don't forget to drop me a "Kudos" 🙂

Kind Regards,
Sahir Maharaj
Data Scientist | Data Engineer | Data Analyst | AI Engineer
P.S. Want me to build your Power BI solution? (Yes, its FREE!)
➤ Lets connect on LinkedIn: Join my network of 15K+ professionals
➤ Join my free newsletter: Data Driven: From 0 to 100
➤ Website: https://sahirmaharaj.com
➤ Email: sahir@sahirmaharaj.com
➤ Want me to build your Power BI solution? Lets chat about how I can assist!
➤ Join my Medium community of 30K readers! Sharing my knowledge about data science and artificial intelligence
➤ Explore my latest project (350K+ views): Wordlit.net
➤ 100+ FREE Power BI Themes: Download Now
LinkedIn Top Voice in Artificial Intelligence, Data Science and Machine Learning

@Sahir_Maharaj 
I tried but measure giving the following error.
The expression refers to multiple columns. Multiple columns cannot be converted to a scalar value.

I tried that and it looked like it was going to work, but then I get this error message.

 

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

The "Switch" function checks the selected value of the slicer and returns the appropriate set of columns using the "SelectColumns" function. If no value is selected in the slicer, the formula returns BLANK().

 

You can then use the "Selected Columns" measure in your table visualization instead of selecting the columns directly. When you change the value in the slicer, the columns displayed in the table will update automatically based on the selected year.

 

Let me know if you might need further guidance.


Did I answer your question? Mark my post as a solution, this will help others!

If my response(s) assisted you in any way, don't forget to drop me a "Kudos" 🙂

Kind Regards,
Sahir Maharaj
Data Scientist | Data Engineer | Data Analyst | AI Engineer
P.S. Want me to build your Power BI solution? (Yes, its FREE!)
➤ Lets connect on LinkedIn: Join my network of 15K+ professionals
➤ Join my free newsletter: Data Driven: From 0 to 100
➤ Website: https://sahirmaharaj.com
➤ Email: sahir@sahirmaharaj.com
➤ Want me to build your Power BI solution? Lets chat about how I can assist!
➤ Join my Medium community of 30K readers! Sharing my knowledge about data science and artificial intelligence
➤ Explore my latest project (350K+ views): Wordlit.net
➤ 100+ FREE Power BI Themes: Download Now
LinkedIn Top Voice in Artificial Intelligence, Data Science and Machine Learning

Hi, 

 

I also am trying to do this and got the same error as above about the multiple values not being converted to scalar value. Your response explained how it works but didn't really answer why this error would occur. Do you know why we would be getting this error?

 

Thanks!

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.