I couldn’t think of a way to do this without scripting, but you could do the following which requires only selecting the faces once. Basically you make one side of the cube with the desired faces assigned to a vertex group, and duplicate this side to re-create the cube.
- Make your cube and subdivide as desired. Make sure the object center is still in the center of the cube. Go into Edit, Face mode. Delete all sides of the cube except one.
- Select the desired faces on the remaining side. Create a new vertex group and assign these faces to this group.
- Switch to a view that looks at this face edge-on. Set rotation pivot to “active object” (or snap the cursor to the center and pivot around 3d cursor). Select all faces, Shift-D to duplicate, press Enter.
- Rotate the duplicated side 90 degrees. Repeat duplication/rotation as necessary to complete the cube.
The vertex groups will be duplicated too, so when you select this group all the corresponding faces on all sides will be selected. You could even set up several different groups in step 2. Obviously this approach is limited in that you have to know which faces you want beforehand, ie this method doesn’t allow arbitrary selection of corresponding faces.