I use a macro for this but can't believe it doesn't already exist. Maybe I'm missing something. Maybe it's been implemented with newer versions.
actually, there should be a way to distribute selected shapes evenly between any selected square/rectangle. Either horizontally or vertically.
At least as far back as X7, you can distribute by spacing in a number of ways, including "to the page" - but it is going to put the outhermost two objects at the limits of the space to which they are being distributed. In your example, that would mean one rectangle on the left edge of the page, one on the right edge, and the other shapes distributed between them.
You can work around that by drawing a couple of line segments - in your example, vertical ones - that could serve as the left-most and right-most limits.
Am I missing something here, I've had distribute set up like this for ever.
That gets you the top right image I've shown above (BAD).
Not what I get. See screen cap
Your snip doesn't show the page boundaries. Distributing shapes evenly by themselves is easy. Distributing them across the page or between a rectangle requires macros.