I use OpenArgs.
DoCmd.OpenForm has an optional parameter OpenArgs. Pass your FormBID to the pop up form with this paramter.
Code:
docmd.OpenForm "form name here", , , , acFormAdd, acDialog, me.formbid
Then in form C's On Load event check to see if the form opened with OpenArgs, if so then set the default value of the foreign key field's control to the value passed to open args:
Code:
if not isnull(me.openargs) then
me.formbidfk.defaultvalue = me.openargs
else
'no args passed to form. clear default value just in case.. maybe not necessary
me.formbidfk.defaultvalue = ""
end if
https://docs.microsoft.com/en-us/off...docmd.openform