Great, thanks for this.
I am still trying to do it using formulas, but its getting more and more messy and unstable, so I think VBA is the way to go.
Looking forward to seeing what you can come up with,
Cheers,