I have an object that I want to make a square array like a 3x3x3 cube. I want be able to change length and count for one axis and have all the other ones follow.


I have an object that I want to make a square array like a 3x3x3 cube. I want be able to change length and count for one axis and have all the other ones follow.


You can do this with Drivers
Right click on the Count of the second modifier and select Add Driver.

In the header of the Graph editor, change the editor type to Drivers:

In the Properties region (N) set the variable to Single property, and the object to the object with the array modifier which values you want to copy:

Right click on the Count of the array modifier you want to make the driver equal to and select Copy Data path:

In the graph editor, Paste the copied data path in the Path box:

Set the type to Scripted expression, and put the variable you have created in the Expression box:

As mentioned by Wchargin, as an alternative to scripted expression you could use Sum Values or something similar. These will be considered "trusted" by the python security features.
Blender has some python security features that will prevent the execution of scripted expression drivers. You can configure the settings for this in User Preferences > File. (see After updating to Blender 2.68 Driver Scripts are no longer automatically excecuted)