Forum Discussion
Anonymous
6 years agoNot applicable
Return a value from a specific row
I feel like this should be easy but I am having trouble. pretty much what I have is a table with these values: ChallengeID Progress UserCount ABD-5FGD 1200 67 ABD...
- 6 years ago
Hi Bigascon,
If you need it as a calculated column this should work. I am not sure if it is the fastest way. Maybe somebody has a faster way:)
Usercount max progress = //calculate maxprogress for challengeid VAR MAXPROGRESS = CALCULATE ( MAX ( 'example'[Progress] ), FILTER ( 'example', 'example'[ChallengeID] = EARLIER ( 'example'[ChallengeID] ) ) ) //calculate usercount for row that contains maxprogress (highest if 2 rows are equal in progress VAR USERCOUNT = CALCULATE ( MAXX ( FILTER ( 'example', 'example'[Progress] = MAXPROGRESS ), 'example'[UserCount] ), ALLEXCEPT ( 'example', 'example'[ChallengeID] ) ) RETURN USERCOUNT
mahoneypat
Microsoft Employee
6 years agoPlease try this column expression
NewColumn 2 =
VAR maxthisID =
CALCULATE (
MAX ( Challenge[Progress] ),
ALLEXCEPT ( Challenge, Challenge[ChallengeID] )
)
RETURN
CALCULATE (
MAX ( Challenge[UserCount] ),
ALLEXCEPT ( Challenge, Challenge[ChallengeID] ),
Challenge[Progress] = maxthisID
)
VAR maxthisID =
CALCULATE (
MAX ( Challenge[Progress] ),
ALLEXCEPT ( Challenge, Challenge[ChallengeID] )
)
RETURN
CALCULATE (
MAX ( Challenge[UserCount] ),
ALLEXCEPT ( Challenge, Challenge[ChallengeID] ),
Challenge[Progress] = maxthisID
)
If this works for you, please mark it as the solution. Kudos are appreciated too. Please let me know if not.
Regards,
Pat