Removing the embedded subforms will speed up the opening of your main form, and as each sub form opens by itself, it will open quicker than all sub forms openning together.
I have one application that has only 1 subform object on the main form, and which ever tab is selected, I use the Change event for the tab control to see which tab was selected, and then set the SourceObject property to the form name to use as the subform. The code to see which tab was selected is:
Code:
Select Case Me!TabCtl0.Pages(Me!TabCtl0.Value).Name
Case "Customers"
Me.SubFormControl.SourceObject="frmCustomers"
Case "Orders"
Me.SubFormControl.SourceObject="frmOrders"
End Select
Of course this is sample only for a two tab form for Customers and Orders. In my sample here, the name of the subform control is "SubFormControl" (I know, not very original).
If you want to use buttons rather than a Tab Control, then within the button's OnClick event, all you would need is the "Me.SubFormControl.SourceObject="frmCustomers" statement. Be sure to change the form name to the actual subform you want loaded as your subform.
If you are using the Master and Child link fields between the master form and the subform, you should set those with the VBA code for each button too.
HTH,