Forum Discussion

NuTek's avatar
NuTek
Frequent Visitor
9 years ago
Solved

Calculating overlap between selected groups

Given the following table and data:   Group     Task =====     ==== XYZ        A XYZ        C XYZ        D XYZ        E PDQ        B PDQ        C PDQ        D PDQ        E LUV    ...
  • v-ljerr-msft's avatar
    v-ljerr-msft
    9 years ago

    Hi NuTek,

     

    You can use FIRSTNONBLANK/LASTNONBLANK function to get the first/last selected group.

    First Selected Group = FIRSTNONBLANK(Table1[Group],1)

    The formula below is for your reference.:smileyhappy:

    % Overlap for first Selected Group =
    VAR firstSelectedGroup =
        FIRSTNONBLANK ( Table1[Group], 1 )
    VAR count_of_overlap =
        CALCULATE (
            DISTINCTCOUNT ( Table1[Task] ),
            FILTER (
                Table1,
                CALCULATE ( COUNT ( Table1[Task] ), ALLSELECTED ( Table1[Group] ) ) = 2
            )
        )
            + 0
    VAR count_of_task_XYZ =
        CALCULATE (
            DISTINCTCOUNT ( 'Table1'[Task] ),
            'Table1'[Group] = firstSelectedGroup
        )
            + 0
    RETURN
        DIVIDE ( count_of_overlap, count_of_task_XYZ, 0 )

    Regards