
Originally Posted by
Darren Chapman
Question:
The formulae you have used. (for the condtional formatting) and this one
=IF(OR(ROWS(B$11:B11)>COLUMNS($C11:C11),MOD(MONTH(C$9)-MONTH(1&$B11),12)>=$AM$10),"",ROUND(INDEX($A$10:C$10,COLUMN(C11)-MOD(MONTH(C$9)-MONTH(1&$B11),12))*IF(MOD(MONTH(C$9)-MONTH(1&$B11),12)=0,ROUND($L$3,2),ROUND(IF(MOD(MONTH(C$9)-MONTH(1&$B11),12)=$AM$10-1,$J$3,$M$3),2)),2))
I have tried and tried to interpret them but am lost...
The confusion here probably stems from the MODs etc... in reality it looks more complicated than it is.
First things first you need to test to see if a calculation needs to be performed at all...
we know no calculation is required if either:
a) starter month (B) is post revenue month (row 9) - see ROWS>COLUMNS above
or
b) time passed between starter month (B) and revenue month (row 9) exceeds duration - ie fully paid up already
Point b) ie Duration test is conducted by the 2nd half of the above OR clause, namely:
In truth the MOD construct is used repeatedly* thereafter so in homage to Allo Allo "I will say this only once"
*The MOD test is used repeatedly through the function in part so as to allow for a 1-for-all formula - ie one function which can be applied across every cell in the matrix without need for modification
MONTH(C$9) -> will return the month number (1-12) of the revenue month
MONTH(1&$B11) -> will do the same but for the "starter" month
In the case of C11 (from which the formula is taken) and where C9 is Aug-08 and B11 "Aug" this means we get:
In short - not a great example to work through the logic of what's going on but what it does show us is that where the months match we get a 0 result - ie the value is exclusive of current month (ie Aug-08 to Aug is really 1 instalment)
We can better illustrate the MOD impact if we apply the same formula but based on say H11 (rather than C11) where Revenue Month (H9) is Jan-09 and Starter month remains as before (same row - ie Aug), we then get:
So in essence what the MOD value is returning is the current duration (exclusive of current month) at that point in time.
So the 5 in fact represents that there will have been a max. of 5 prior instalments for an "Aug" starter up to an including Dec-08
We use MOD because as we can see sometimes the month difference will be positive and sometimes negative - the MOD with a divisor of 12 (months in year) will always return for us the correct duration.
It follows that if the MOD returns a value >= duration requirement (AM10) then we know there are no further instalments to be made in the current revenue month for those heads starting in the starter month.
If we assumed duration was always to be 12 months then this calculation is superfluous - however - I have assumed duration can be adjusted from 1-12 months and as such it is required to prevent revenue calculations beyond the final month.
The next section determines what is to happen when a calculation does need to be made...
and can itself be broken into three distinct parts
i) outer ROUND to round revenue amount to 2 decimals
ii) calculation to determine "starters" for the appropriate starter month in relation to revenue month
iii) calculation to determine appropriate instalment value (based on which of the "n" instalments the current calculation represents)
i) I won't dwell on the ROUND elements as these are I think self explanatory ?
ii) "starters"
In the case of PLAN matrix the headcount values are sourced from row 10
(in ACTUAL matrix they are sourced from row 57 which in part answers your part about how ACTUAL talks to HEADCOUNT)
The above relates to C11 so basically it uses the same MOD calc as before (which returns 0 for Aug-08) and subtracts that value the column number of the current column.
In the case of C11 this means:
In the case of H11 (Jan-09) we'd get:
In the case of H12 (Jan-09 but Sep starters) we'd get:
Hopefully thus far this makes sense but in essence the formula is designed such that the correct starter headcount value is used for each cell in the matrix
As mentioned before this model only works in terms of it's current set up if duration never exceeds 12 months.
iii) Instalment - determined by:
Here we're basically working out whether to use instalment rate L3 (first instalment), J3 (final) or M3 (standard)
We do that using the same MOD construct we've seen previously as we know this gives us an (exclusive) duration/no.instalments figure for the current month.
Where the result of the MOD calc is:
-- 0 then we know current month is first month thus we use L3
-- equal to AM10-1 then we know that current month is final instalment and thus use J3
-- any other value means the current month is a standard instalment and thus we use M3
we ensure the rate we use is rounded to 2 decimals
And hopefully that covers the mechanics.

Originally Posted by
Darren Champan
i am trying to ascertain how you managed to get the HEADCOUNT to speack to ACTUAL.
It's actually the other way around - ACTUAL calculates off HEADCOUNT which itself calculates off PLAN for future months.
What we would expect the user to do each month is update the current month ACTUAL headcount figures - ie override the existing formulae.
In the sample you will note that AC57 (Oct-10) is a formula as are the remaining cells whereas C57:AB57 are manual entry.
That is to say we (the user) have overridden the links back to the original PLAN headcount for historic months with the real figures as they arose at the time - so in Oct-10 we will add the ACTUAL headcount (starters leavers) in AC57:AC69 as appropriate.
Worth adding at this point that the PLAN matrix uses a slightly more complex formula than the above in order to determine the appropriate leaver-adjusted headcount, eg:
so here you can see that we have an additional SUM subtraction.
The SUM is tallying leavers for the appropriate Starter month that took place up to and including the revenue month and subtracts that figure from the Actual starter headcount as entered by user manually per aforementioned work flow.

Originally Posted by
Darren Chapman
DO: The formulae used in the matrix have been adjusted such that the formula applied to top left most cell of each matrix can be applied to the 3 year matrix in it's entirety without need for modification.
DC: What does this mean? i can copy and past and drag it anywhere?
The top left cell of each matrix can be copied across that particular matrix in its entirety yes.
As mentioned there are functional differences between PLAN & ACTUAL formulae so they are not interchangeable (though similar) - ie PLAN formula can not be copied to ACTUAL and vice-versa

Originally Posted by
Darren Chapman
DO: It is obviously important to note that this is not meant as a "finished article".
DC: What else do you have in mind?
Simply that I don't know if you need to tweak it - it may be that you will want/need to build in some tolerance to your future PLAN headcount based on historic attrition - esp. if it has an impact on revenue (best to be prudent).
For ex. it might become clear from the actual headcount values that you are losing say 25% of starters over the first 6 months.
On which basis you might decide to build some formulae into the HEADCOUNT section specifically aimed at future months (eg Oct-10 onwards) in which leavers are "forecast" incrementally so as to give a more accurate reflection of revenue profile.
(this is potentially important if they do not get refunded what they pay - ie you should not understate starters given you get some revenue but equally you should not assume a full duration for each head)
This is not something we would do for you by the way... you might want to implement yourself if deemed worthwhile.
On a final note I've not read through this since composing it so it might have a few typos - I will correct them when I see them so you might see that I've edited the post etc - that will be why.
Incidentally - when you quote another poster it's much easier for others to follow if you encase within QUOTE tags as I have done here - much easier to tell who is saying what.
Bookmarks