Microsoft is giving away 50,000 FREE Microsoft Certification exam vouchers!
Enter the sweepstakes now!Prepping for a Fabric certification exam? Join us for a live prep session with exam experts to learn how to pass the exam. Register now.
I have a table that has the names of people and the groups that they belong to. For example, the table looks like the following:
Worker name | Group name |
John Henderson | Economy |
John Henderson | Finance |
John Henderson | IT |
Scott Smith | Economy |
Scott Smith | IT |
Scott Smith | Sales |
Scott Smith | Marketing |
Denise Lockman | Sales |
Denise Lockman | Finance |
What I want to do is create a visualisation such that I have a slicer that I can select multiple names from, and the groups that these names all belong to are displayed. For example, if I chose John Henderson and Scott Smith, Economy and IT would be displayed, if I chose Scott Smith and Denise Lockman, Sales would be displayed, if I chose John Henderson, Scott Smith and Denise Lockman, no groups would be displayed etc.
I have tried duplicating the table and creating another table with the intersection between the two tables but I could not get it to work. I also tried pivotting out the column 'Group name' and filled the new columns with 1 and 0's depending on if they belong to each group or not, but that also does not work (I should also mention that in my real data set I have over 400 unique names and 400 unique groups).
I'm sure there is a simple way of displaying what I want but I cannot figure it out. Would anyone know how I might go about this?
Solved! Go to Solution.
This solution uses a separate table for the visual in order to break the link between slicer and visual. The original table is named Workers.
1. Create calculated table:
WorkersVisual = Workers
2. Create measure:
Visual Filter =
VAR vWorkerCountSlicer =
COUNTROWS ( VALUES ( Workers[Worker name] ) )
VAR vWorkerGroup =
TREATAS ( VALUES ( WorkersVisual[Group name] ), Workers[Group name] )
VAR vWorkerCountInGroup =
COUNTROWS ( CALCULATETABLE ( VALUES ( Workers[Worker name] ), vWorkerGroup ) )
VAR vResult =
IF ( vWorkerCountSlicer = vWorkerCountInGroup, 1 )
RETURN
vResult
3. Create a slicer using Workers[Worker name].
4. Create a table visual using WorkersVisual[Group name].
5. Add the measure Visual Filter to the table visual as a filter:
Result:
---
---
Proud to be a Super User!
This solution uses a separate table for the visual in order to break the link between slicer and visual. The original table is named Workers.
1. Create calculated table:
WorkersVisual = Workers
2. Create measure:
Visual Filter =
VAR vWorkerCountSlicer =
COUNTROWS ( VALUES ( Workers[Worker name] ) )
VAR vWorkerGroup =
TREATAS ( VALUES ( WorkersVisual[Group name] ), Workers[Group name] )
VAR vWorkerCountInGroup =
COUNTROWS ( CALCULATETABLE ( VALUES ( Workers[Worker name] ), vWorkerGroup ) )
VAR vResult =
IF ( vWorkerCountSlicer = vWorkerCountInGroup, 1 )
RETURN
vResult
3. Create a slicer using Workers[Worker name].
4. Create a table visual using WorkersVisual[Group name].
5. Add the measure Visual Filter to the table visual as a filter:
Result:
---
---
Proud to be a Super User!
This is perfect! Thanks very much!
Check out the April 2025 Power BI update to learn about new features.
Explore and share Fabric Notebooks to boost Power BI insights in the new community notebooks gallery.
User | Count |
---|---|
72 | |
67 | |
67 | |
42 | |
42 |
User | Count |
---|---|
46 | |
38 | |
28 | |
26 | |
25 |