Предполагая, что ваша таблица называется «Данные»:
Count of Common Names =
VAR A_Names =
CALCULATETABLE ( VALUES ( Data[Name] ), Data[Filter] = "A" )
VAR B_Names =
CALCULATETABLE ( VALUES ( Data[Name] ), Data[Filter] = "B" )
VAR Common_Names =
INTERSECT ( A_Names, B_Names )
RETURN
COUNTROWS ( Common_Names )
Как это работает:
Сначала мы создаем таблицу различных имен для фильтра А.
Во-вторых, мы делаем то же самое для фильтра B.
Наконец, мы находим, какие имена существуют в обеих таблицах, находя их пересечение.
Edit:
Чтобы рассчитать стоимость для общих имен, измените вышеуказанный показатель:
Cost of A given B =
VAR A_Names =
CALCULATETABLE ( VALUES ( Data[Name] ), Data[Filter] = "A" )
VAR B_Names =
CALCULATETABLE ( VALUES ( Data[Name] ), Data[Filter] = "B" )
VAR Common_Names =
INTERSECT ( A_Names, B_Names )
RETURN
CALCULATE ( SUM ( Data[Cost] ), Common_Names, Data[Filter] = "A" )