Get certified for free when you join Fabric Data Days 2026 and dive into Fabric, Power BI, SQL, AI, and other essential data skills.
Join nowJuly 7 - July 17 | Round 2 of the Power BI Dataviz World Championships. Don't miss your chance! Learn more
Building a Staff Organisation dashboard, and we want to be able to filter by Staff Expertise
Some staff have multiple expertise
A messy slicer with comma delimited expertise would technically work when using the search function, but isn't user friendly if scrolling and selecting.
SO
I have 3 columns in the database - Expertise 1, Expertise 2, Expertise 3
Is there anyway that a slicer can take the uniques of all these 3 columns and turn it into a single filter list - without the heirachal steps
Thanks in advance
Solved! Go to Solution.
You can try something like the following...
I made a small sample dataset
Create a calculated table with,
Exp List =
var _vTable =
UNION(
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp1]),
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp2]),
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp3])
)
Return
FILTER(
DISTINCT(_vTable),
[Experience]<> ""
)
To get a distinct list of non-blank experience.
Create a measure,
Measure =
var _expTable =
UNION(
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp1])),
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp2])),
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp3]))
)
Return
COUNTROWS(INTERSECT(_expTable, 'Exp List'))
Create a table visual (or matrix should also work) with your values.
Put the measure in the filter pane under 'Filters on this Visual' (for the table you created) and set the filter value to greater than 0
Create a slicer with the values from the calculated table and you should now be able to slice by experience.
Proud to be a Super User! | |
How to go about by creating a slicer which allows users to choose either exp 1/2/3.
Then this selection only returns a table with that specific column . Eg if user selects exp 1 . A table is return with distict values of 1 . Then this can be added to the text filter search ?
How to go about this ?
You can try something like the following...
I made a small sample dataset
Create a calculated table with,
Exp List =
var _vTable =
UNION(
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp1]),
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp2]),
SELECTCOLUMNS('Table', "Experience", 'Table'[Exp3])
)
Return
FILTER(
DISTINCT(_vTable),
[Experience]<> ""
)
To get a distinct list of non-blank experience.
Create a measure,
Measure =
var _expTable =
UNION(
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp1])),
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp2])),
SELECTCOLUMNS('Table', "_exp", SELECTEDVALUE('Table'[Exp3]))
)
Return
COUNTROWS(INTERSECT(_expTable, 'Exp List'))
Create a table visual (or matrix should also work) with your values.
Put the measure in the filter pane under 'Filters on this Visual' (for the table you created) and set the filter value to greater than 0
Create a slicer with the values from the calculated table and you should now be able to slice by experience.
Proud to be a Super User! | |
Join us in Barcelona for FabCon and SQLCon, the Fabric, Power BI, SQL, and AI community event. Save €200 with code FABCMTY200.
Join Data Days 2026: 60 days of free live/on-demand sessions, challenges, study groups, and certification opportunities.
| User | Count |
|---|---|
| 26 | |
| 25 | |
| 19 | |
| 19 | |
| 15 |
| User | Count |
|---|---|
| 48 | |
| 45 | |
| 43 | |
| 39 | |
| 37 |