OK, thanks for clarifying.
So, to recap, you have a main form, based on a main table, which has an
AutoNumber ID field as a primary key. You have multiple subforms, each
based on a different table, those tables being related to the main table as
"child" tables (i.e., main-to-other is 1:m).
You are trying to get a different subform to display, depending on some
choice in a combo box on the main form (but still related to the record
being displayed on the main form).
Here's a potential alternate approach to having those various subforms swap
in and out (or "popup", as you've described them)...
On your main form, add a tab control. Use a combo box in the form header to
allow the user to select a record from the main table. In the AfterUpdate
event of that (unbound) combo box, requery the form. Base the form on a
query that looks to the form's combobox to select the record to return.
Now, in design view, add controls on the first/front tab that correspond to
your main table fields. You'll know you can "drop" them onto the first tab
when the background of the tab turns dark. Next, click on the next tab.
Drag one of your (previously created) subforms onto this tab. Click the
next tab, drag/drop the next subform. For each of these subforms, link
Parent/Child on that ID field you mentioned
Repeat until you've place one subform on each tab.
Now, when you first open the form, the query looks at the combo box, sees
nothing, so loads nothing. Since there's no ID field, the subforms load
nothing.
Select a record in the header's combobox. Access requeries the source of
the form (using the choice in the combobox), loads the (single) record, then
loads the subforms belonging to that single record. If you click on various
tabs, you see the subform data associated with that tab and with the main
form record.
Does this give you a way to get done what you are trying to do?
Regards
Jeff Boyce
Microsoft Office/Access MVP
N