Afaik, I think you have to use script or some existing addons. The only addon I've ever seen that can do distribute is the Oscurart Tools, which has been bundled with the official Blender build, already.
The following steps show you how to use it:
- File > User Preferences (or press CtrlAltU), then enable Oscurart Tools in the Addons list;
- Back to the scene, select the objects you want to distribute;
- Find Oscurart Tools panel down in the left-hand Tool Shelf, enable Object button, which will bring a new panel below called Object Tools;
- Click Distribute button in it, and choose the axis (X Y and/or Z), then click OK.
NOTE: The order in which the objects are selected is quite important, which determines how you want to distribute them, as shown below.
Manual page for this addon see here. Btw, Oscurart Tools is much more powerful other than distribute.
Note: This addon has been removed from Blender via https://developer.blender.org/rBA731efb680132e3d5f846cae9b448a74a7b74a9b8
Shift+S
> Selection to grid, but beyond that I think you will have to script this in python. $\endgroup$