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

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
ablalm
Regular Visitor

Visualization of overlap between users belongings

Hi there,

 

I have a list of stockholders, their unique id, name, stockname and how much do they have. In one row only information about one user and one stock type. I need to find out  with whom have the most overlap stocks one exact user. 

 

In the screenshots the example of the sheet i have. And the result that I want to get for one user (George).

ablalm_0-1676882793440.png

ablalm_1-1676882811406.png

 

Thank you. 

1 ACCEPTED SOLUTION

hi @ablalm 

try to 

1) add a calculated table like:

SlicerTable = ALL(TableName[user_name])

2) add a slicer with SlicerTable[user_name]

3) plot a table visual with TableName[user_name], TableName[user_id] and a measure like:

OVERLAP = 
VAR _name1 =MAX(TableName[user_name])
VAR _name2 =SELECTEDVALUE(SlicerTable[user_name])
VAR _list1 =
CALCULATETABLE(
    VALUES(TableName[stocks]),
    ALL(TableName[user_id]),
    TableName[user_name] = _name1
)
VAR _list2 =
CALCULATETABLE(
    VALUES(TableName[stocks]),
    ALL(TableName[user_id]),
    TableName[user_name] = _name2
)
VAR _count =
COUNTROWS(INTERSECT(_list1, _list2))
RETURN
IF(
    _name1=_name2,
    BLANK(),
    _count
)

 

it worked like:

FreemanZ_0-1676894853037.png

 

FreemanZ_1-1676894877524.png

View solution in original post

6 REPLIES 6
tamerj1
Super User
Super User

Hi @ablalm 
Please refer to attached sample file with the proposed solution.

1.png

Thank you!

FreemanZ
Super User
Super User

hi @ablalm 

your data seems inconsistent, like 3 is Tom or Ivan?

 

hi @FreemanZ 

 

sorry for that, here is the correct output

ablalm_0-1676889629315.png

 

hi @ablalm 

try to 

1) add a calculated table like:

SlicerTable = ALL(TableName[user_name])

2) add a slicer with SlicerTable[user_name]

3) plot a table visual with TableName[user_name], TableName[user_id] and a measure like:

OVERLAP = 
VAR _name1 =MAX(TableName[user_name])
VAR _name2 =SELECTEDVALUE(SlicerTable[user_name])
VAR _list1 =
CALCULATETABLE(
    VALUES(TableName[stocks]),
    ALL(TableName[user_id]),
    TableName[user_name] = _name1
)
VAR _list2 =
CALCULATETABLE(
    VALUES(TableName[stocks]),
    ALL(TableName[user_id]),
    TableName[user_name] = _name2
)
VAR _count =
COUNTROWS(INTERSECT(_list1, _list2))
RETURN
IF(
    _name1=_name2,
    BLANK(),
    _count
)

 

it worked like:

FreemanZ_0-1676894853037.png

 

FreemanZ_1-1676894877524.png

Thanks a lot!

Helpful resources

Announcements
July PBI25 Carousel

Power BI Monthly Update - July 2025

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

Join our Fabric User Panel

Join our Fabric User Panel

This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.

June 2025 community update carousel

Fabric Community Update - June 2025

Find out what's new and trending in the Fabric community.