Just to clarify what you are asking, when you say, the recordset is changed on a form, do you mean:
form.RecordSource = "Query1"
>>>changes to >>> form.RecordSource = "Query_02"
The normal order of events for a form and subforms is:
Open>Load>Resize>Activate>((GotFocus))>Current
(the gotfocus event depends on if there are controls on the form or not)
Here's a link to the general order of events:
Microsoft>Office>Order of events for database objects
If you will provide an example of your script (properly formatted with the
[CODE/] tool :) ) along with a clear explanation of what you want along with what it's not doing we might be able to provide you with a clearer answer.