Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!Calling all Data Engineers! Fabric Data Engineer (Exam DP-700) live sessions are back! Starting October 16th. Sign up.
With data that looks similar to this ...
Username --- Group
John Smith -- GroupA
John Smith -- GroupC
Jane Doe -- GroupB
Jane Doe -- GroupC
Mike Brown -- GroupC
Mike Brown -- GroupD
I'm trying to filter out all rows where the user is a member of GroupA or GroupB. So on the example above I would expect rows 1-4 - that is both entries for John Smith and Jane Doe to be filtered out (even the ones for "GroupC"). I would expect rows 5 & 6 to still appear on the report as 2 separate rows).
I've tried to get the right formula, but can't figure out how to filter out rows 2 and 4.
Solved! Go to Solution.
Hi @Anonymous
You could create a new calculated table:
NewTable = FILTER ( Table1; ISEMPTY ( INTERSECT ( CALCULATETABLE ( DISTINCT ( Table1[Group] ); Table1[Username] = EARLIER ( Table1[Username] ); ALL ( Table1 ) ); { "GroupA"; "GroupB" } ) ) )
Another option, depending on what you want, is to use a table visual with Username and Group in values (with "Don't summarize") and then create a measure as indicated below. Then place the new measure in visual level filters of the table visual and select 'Show items when the value is' --> 1
ShowMeasure = IF ( ISEMPTY ( INTERSECT ( CALCULATETABLE ( DISTINCT ( Table1[Group] ); ALL ( Table1[Group] ) ); { "GroupA"; "GroupB" } ) ); 1 )
Hi @Anonymous
You could create a new calculated table:
NewTable = FILTER ( Table1; ISEMPTY ( INTERSECT ( CALCULATETABLE ( DISTINCT ( Table1[Group] ); Table1[Username] = EARLIER ( Table1[Username] ); ALL ( Table1 ) ); { "GroupA"; "GroupB" } ) ) )
Another option, depending on what you want, is to use a table visual with Username and Group in values (with "Don't summarize") and then create a measure as indicated below. Then place the new measure in visual level filters of the table visual and select 'Show items when the value is' --> 1
ShowMeasure = IF ( ISEMPTY ( INTERSECT ( CALCULATETABLE ( DISTINCT ( Table1[Group] ); ALL ( Table1[Group] ) ); { "GroupA"; "GroupB" } ) ); 1 )
Thanks - I went with the measure, which works perfectly.
Join the Fabric FabCon Global Hackathon—running virtually through Nov 3. Open to all skill levels. $10,000 in prizes!
Check out the October 2025 Power BI update to learn about new features.