cancel
Showing results for
Did you mean:
Regular Visitor

## How to Count Users with Multiple Mourse Completions?

Hi team,

I need to count people who are compliant with all courses that our company offers to them. Anyone who completes all courses is compliant, others are not.

For example, let's say we have 5 courses for 4 users, and the first three courses are requirements to become compliant. How should I code it?

Sorry, if it's an easy question. I can think of it in an algorithmic way, but not sure how to write it in DAX. Appreciate your suggestions.

1 ACCEPTED SOLUTION
Super User

First, create a calculated column

Count =
IF ( 'Table'[Course] IN { "C1", "C2", "C2" } && 'Table'[Completed] = "No", 1 )

Then create this measure:

Compliant =
SUMX (
SUMMARIZE (
'Table',
'Table'[Name],
"CountNo",
CALCULATE (
sum('Table'[Count]),
ALLEXCEPT ( 'Table', 'Table'[Name] )

)
),
IF ( [CountNo] = BLANK (), 1 )
)

Proud to be a Super User!

"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Connect to me on LinkedIn || Need consulting? Hire me for a Power BI gig on UpWork.
5 REPLIES 5
Regular Visitor

Thank you @danextian, but it's not working.

It returns Blank.

I was expecting the code to count the YESs and distinct-count every name that is equal to 3 (in this example). With the filter on C4 and C5 that are irrelevant courses.

Super User

Hi @Mahdi1366 ,

My understanding is any [Name] that has [Completed] = No is non-compliant so if count of no of a name is blank, should be compliant.  The  original logic showed  the total on a per name basis but not as a whole. Please try this instead.

Compliant =
SUMX (
SUMMARIZE (
'Table',
'Table'[Name],
"CountNo",
CALCULATE (
COUNTROWS ( 'Table' ),
ALLEXCEPT ( 'Table', 'Table'[Name] ),
'Table'[Completed] = "No"
)
),
IF ( [CountNo] = BLANK (), 1 )
)

Proud to be a Super User!

"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Connect to me on LinkedIn || Need consulting? Hire me for a Power BI gig on UpWork.
Regular Visitor

@danextian You could be right that every [name] with [completed] = No is non-compliant IF there were no irrelevant courses. In the above example, Name A is compliant although A has not completed course C4.
* To be compliant, you only need to complete C1, C2, and C3.

Super User

First, create a calculated column

Count =
IF ( 'Table'[Course] IN { "C1", "C2", "C2" } && 'Table'[Completed] = "No", 1 )

Then create this measure:

Compliant =
SUMX (
SUMMARIZE (
'Table',
'Table'[Name],
"CountNo",
CALCULATE (
sum('Table'[Count]),
ALLEXCEPT ( 'Table', 'Table'[Name] )

)
),
IF ( [CountNo] = BLANK (), 1 )
)

Proud to be a Super User!

"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Connect to me on LinkedIn || Need consulting? Hire me for a Power BI gig on UpWork.
Super User

Hi @Mahdi1366 ,

Try this:

Compliant =
VAR CountOfNo =
CALCULATE (
COUNTROWS ( 'Table' ),
ALLEXCEPT ( 'Table', 'Table'[Name] ),
'Table'[Completed] = "No"
)
RETURN
CALCULATE (
DISTINCTCOUNT ( 'Table'[Name] ),
FILTER ( 'Table', CountOfNo = BLANK () )
)

Proud to be a Super User!

"Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand."
Connect to me on LinkedIn || Need consulting? Hire me for a Power BI gig on UpWork.

Announcements

#### Join Arun Ulag at MPPC23

Get a sneak peek into this year's Power Platform Conference Keynote.

#### Power BI September 2023 Update

Take a look at the September 2023 Power BI update to learn more.

#### Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

#### Exclusive opportunity for Women!

Join us for a free, hands-on Microsoft workshop led by women trainers for women where you will learn how to build a Dashboard in a Day!

Top Solution Authors
Top Kudoed Authors