Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!The Power BI Data Visualization World Championships is back! It's time to submit your entry. Live now!
I have a table that tracks users' performance in various categories of questions as they take a quiz. 5 questions are drawn randomly from 3 different question categories X, Y and Z. A score is calculated for each user in each category based on how many correct answers he got in that category.
How can I calculate cumulative sums for CorrectAnswers and QuestionsAnswered by date, by user and by question category? I want to use the cumulative sums to caculate a cumulative score. That part is easy. It's the cumulative sums that I'm struggling with. This is the end result I'm looking for.
Solved! Go to Solution.
Hi @davidwsw,
Did the DAX in my orignal post meet your requirement?
Best Regards,
Qiuyun Yu
Do you want these as COLUMNS or MEASURES?
COLUMNS
Score = 'Table'[CorrectAnswers] / 'Table'[QuestionsAnswered]
CumulativeCorrectAnswers =
CALCULATE (
SUM ( 'Table'[CorrectAnswers] ),
ALLEXCEPT ( 'Table', 'Table'[User], 'Table'[QuestionCategory] ),
'Table'[Date] <= EARLIER ( 'Table'[Date] )
)
CumulativeQuestionsAnswered =
CALCULATE (
SUM ( 'Table'[QuestionsAnswered] ),
ALLEXCEPT ( 'Table', 'Table'[User], 'Table'[QuestionCategory] ),
'Table'[Date] <= EARLIER ( 'Table'[Date] )
)
CumulativeScore = 'Table'[CumulativeCorrecAnswers] / 'Table'[CumulativeQuestionsAnswered]
Hi @davidwsw,
In your scenairo, you can create measures like below and drag them into the table visual:
CumulativeCorrectAnswers = CALCULATE(SUM( Sheet1[CorrectAnswers]),FILTER(ALL(Sheet1),Sheet1[Date]<=MAX(Sheet1[Date])),VALUES(Sheet1[User]), VALUES(Sheet1[QuestionCategory]))
CumulativeQuestionsAnswered = CALCULATE(SUM( Sheet1[QuestionsAnswered]),FILTER(ALL(Sheet1),Sheet1[Date]<=MAX(Sheet1[Date])),VALUES(Sheet1[User]), VALUES(Sheet1[QuestionCategory]))
CumulativeScore = CALCULATE(SUM( Sheet1[CorrectAnswers]),FILTER(ALL(Sheet1),Sheet1[Date]<=MAX(Sheet1[Date])),VALUES(Sheet1[User]), VALUES(Sheet1[QuestionCategory]))/CALCULATE(SUM( Sheet1[QuestionsAnswered]),FILTER(ALL(Sheet1),Sheet1[Date]<=MAX(Sheet1[Date])),VALUES(Sheet1[User]), VALUES(Sheet1[QuestionCategory]))
Best Regards,
Qiuyun Yu
Hi @davidwsw,
Did the DAX in my orignal post meet your requirement?
Best Regards,
Qiuyun Yu
The Power BI Data Visualization World Championships is back! It's time to submit your entry.
| User | Count |
|---|---|
| 50 | |
| 41 | |
| 32 | |
| 26 | |
| 24 |
| User | Count |
|---|---|
| 131 | |
| 118 | |
| 58 | |
| 45 | |
| 43 |