cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
brettg
Helper II
Helper II

Count number of tests

Hello,

 

I would like to make a table which shows me users with 1 test, 2 tests, 3 tests etc. Something like the below based on the data set.

 

I know I could do this using "group by", but then I wouldn't be able to look at historic data. Is there a way to do this with a measure that would consider the date slicers on the page? (If I change date slicers, only tests in that period are counted)

 

Test CountNumber of users
11
22
31

 

UserIDGenderAgeTestResultTestDateTime
006Male34PASS2022-02-01 19:50:10.897
001Female29PASS2022-01-31 18:35:25.830
004Male25FAIL2022-01-30 10:50:48.873
001Female29PASS2022-01-28 11:39:51.737
001Female29FAIL2022-01-27 11:49:38.180
002Female36PASS2022-01-26 15:07:48.967
004Male25PASS2022-01-25 14:56:13.130
006Male34PASS2022-01-24 17:41:15.973
1 ACCEPTED SOLUTION
v-eqin-msft
Community Support
Community Support

Hi @brettg ,

 

Firstly, create a table for "Count":

New Table = {1,2,3}

Eyelyn9_0-1644458199771.png

 

Please try:

Count = 
CALCULATE(COUNTROWS('Table'),FILTER(ALLSELECTED('Table'),[UserID]=MAX('Table'[UserID]) &&  [TestDateTime]>=MIN('Table'[TestDateTime]) && [TestDateTime]<=MAX('Table'[TestDateTime])))
Count(again based on meassure) = 
var _t=SUMMARIZE('Table','Table'[UserID],"Count by UserID",[Count])
return COUNTROWS(FILTER(_t,[Count by UserID]=MAX('New Table'[Test])))+0

Output:

count based on measure.gif

 

 

Best Regards,
Eyelyn Qin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

View solution in original post

6 REPLIES 6
v-eqin-msft
Community Support
Community Support

Hi @brettg ,

 

Firstly, create a table for "Count":

New Table = {1,2,3}

Eyelyn9_0-1644458199771.png

 

Please try:

Count = 
CALCULATE(COUNTROWS('Table'),FILTER(ALLSELECTED('Table'),[UserID]=MAX('Table'[UserID]) &&  [TestDateTime]>=MIN('Table'[TestDateTime]) && [TestDateTime]<=MAX('Table'[TestDateTime])))
Count(again based on meassure) = 
var _t=SUMMARIZE('Table','Table'[UserID],"Count by UserID",[Count])
return COUNTROWS(FILTER(_t,[Count by UserID]=MAX('New Table'[Test])))+0

Output:

count based on measure.gif

 

 

Best Regards,
Eyelyn Qin
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

Hi Eyelyn,

 

This is perfect thank you! Just what I was looking for.

 

Where you've done {1,2,3} on the new table, would it be simple for me to go up to 10 and then include "10 or more"? 

 

Kind regards,

Brett

brettg
Helper II
Helper II

Not quite what I'm looking for I'm afraid! SelectedValue won't work when my date slicer is between two values.

 

I think I need two measures? one to count the distinct UserID's and another to group them

brettg
Helper II
Helper II

Hello,

 

I need the measure to do a distinct count for "UserID" from the second table. 

 

Then I'd like to create the first table by grouping the user counts into repeat test usage.

Measure = CALCULATE(distinctCount(Table[UserId]),selectedvalue( Table[date]))



Muhammad Hasnain

#LetsConnect https://www.linkedin.com/in/hasnain2587/
mh2587
Super User
Super User

Measure = CALCULATE(Count(Table[Test]),selectedvalue( Table[date]))


Muhammad Hasnain

#LetsConnect https://www.linkedin.com/in/hasnain2587/

Helpful resources

Announcements
PBI Sept Update Carousel

Power BI September 2023 Update

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

Learn Live

Learn Live: Event Series

Join Microsoft Reactor and learn from developers.

Dashboard in a day with date

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!

MPPC 2023 PBI Carousel

Power Platform Conference-Power BI and Fabric Sessions

Join us Oct 1 - 6 in Las Vegas for the Microsoft Power Platform Conference.

Top Solution Authors