Don't see any attachment...
i think you forgot to attach the file
Sorry. I just attached it.
You can compute the status with
if first() = 0 then ''
elseif SUM( [Score] ) > LOOKUP(SUM( [Score] ),-1) then 'up'
elseif SUM( [Score] ) < LOOKUP(SUM( [Score] ),-1) then 'down'
else 'no change'
compute using Subject-Date Restarting every Subject.
You can see the result on sheet Validate1
Now for this calculation to still work if you filter in a single month, you need your Month filter to be a table calculation.
LOOKUP( MIN( DATETRUNC('month', [Date] ) ),0 )
From this you could easily get a view like View1 , with a shape per Subject.
Now if you want to count the nb of Subject per status, it gets more complicated. You would need to do a window_sum restarting on every status, but since status is a table calc and not a dimension, you cannot do that.
One option you have is to create a bar chart, this way for every status, Tableau will pill up every Subject on top of each other, and the axis will give you the correct value.