On my project plans, I use a Red/Yellow/Green/Gray column called [Health], and I also use the stock [Predecessors] column. I'm trying to come up with a column formula so that if I change the [Health] value on a given row, it will update the [Health]@row value of every row downstream that directly or indirectly uses the changed row as a predecessor. I was able to come up with this column formula so far:
=IF([Predecessors]@row <> "", INDEX(COLLECT([Health]:[Health], [Row Number]:[Row Number], [Predecessors]@row ), 1), "")
Basically the formula will return the [Health] value of whatever row matches the [Row Number] value displayed in the [Predecessors] column for the row in question. It functions, but will only update the Health value for 1 step downstream. I realize that my [Health] column can't be both a user-input column and a column formula column. I was thinking maybe of having a helper column called [Health Change?] and having it update with the new [Health] value. Then I can use conditional formatting to alter the formatting of the [Health] column and alert me of the change.
So basically I'm looking for something where if [Task]2 uses [Task]1 as a predecessor, [Task]10 uses [Task]2 as a predecessor, and [Task]155 uses [Task]10 as a predecessor, then [Health Change?]2, [Health Change?]10, & [Health Change?]155 all get updated if [Health]1 changes.
With this example and using the formula I have above, it currently only updates [Health Change?]2 and leaves the rest of the downstream rows unchanged.
Hopefully I'm explaining this clearly, but please let me know if my ask is confusing. Thanks in advance for any help you can provide.