Ah, I see. That definitely looks tricky.
You might consider a motion path approach — since every piece of text follows the same route, it could probably be done that way.
Then the issue would become how to determine where along the motion path each layer is, which would be something to do with the total number of lines of text and number of lines of text up to and including the current layer. And you will need someway to control the spacing between the texts as well.
So it would be a valueAtTime() expression, the position being that of a null that moves along the motion path, and each piece of text would be somewhere along the motion path depending on number of lines plus spaces preceding it. The path would be the shape of an “L” turned 180 degrees, so it came from the side and then moved down like you have.
Not really simple either, but might be more manageable.
Kalleheikki Kannisto
Senior Graphic Designer