cancel
Showing results for 
Search instead for 
Did you mean: 

Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.

Reply
Mahdi1366
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?

Mahdi1366_0-1669335894703.png

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

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 )
)

 

danextian_0-1669360269867.png

 






Did I answer your question? Mark my post as a solution!

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.
Learn with me on YouTube @PowerBITambayan.

View solution in original post

5 REPLIES 5
Mahdi1366
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.

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 )
)

 






Did I answer your question? Mark my post as a solution!

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.
Learn with me on YouTube @PowerBITambayan.

@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.

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 )
)

 

danextian_0-1669360269867.png

 






Did I answer your question? Mark my post as a solution!

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.
Learn with me on YouTube @PowerBITambayan.
danextian
Super User
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 () )
    )





Did I answer your question? Mark my post as a solution!

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.
Learn with me on YouTube @PowerBITambayan.

Helpful resources

Announcements
PBI November 2023 Update Carousel

Power BI Monthly Update - November 2023

Check out the November 2023 Power BI update to learn about new features.

Community News

Fabric Community News unified experience

Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.

Power BI Fabric Summit Carousel

The largest Power BI and Fabric virtual conference

130+ sessions, 130+ speakers, Product managers, MVPs, and experts. All about Power BI and Fabric. Attend online or watch the recordings.

Top Solution Authors
Top Kudoed Authors