Forum Discussion
pateam
8 years agoFrequent Visitor
Rank based on cumulative total
I have operation and values sequence and want to rank them if the cumulative sum of earlier is equal or less than 30. Data set id operation value 1 op1 10 2 op2 20 3 op3 30 ...
v-juanli-msft
Community Support
8 years agoHi pateam
create calculated columns
cumulative = CALCULATE(SUM(Table1[value]),FILTER(ALL(Table1),[id]<=EARLIER([id]))) int = INT(Table1[cumulative]/30) earlier = LOOKUPVALUE(Table1[int],Table1[id],Table1[id]-1) diff = Table1[int]-Table1[earlier] group = IF(Table1[diff]=1,CALCULATE(SUM(Table1[diff]),FILTER(Table1,Table1[id]<=EARLIER(Table1[id]))),BLANK()) rank = IF(Table1[group]=BLANK(),CALCULATE(FIRSTNONBLANK(Table1[group],1),FILTER(Table1,Table1[id]>EARLIER(Table1[id]))),Table1[group])
If you have more values in this table, you would see all ranks.
Best Regards
Maggie
pateam
8 years agoFrequent Visitor
Dear v-juanli-msft,
When op2 value changed, expected output should be as belows. please help me on this.