I don't think OpenArgs will work by passing a recordsource (query), but I could be wrong. You'll have to try it.
Since you would be on a mainform (so to speak - the newly opened form w/subform), you could try this syntax
Code:
Me!Subform1.Form.RecordSource = "SELECT blah blah yada yada"
See http://access.mvps.org/access/forms/frm0031.htm
I have heard of having 3 hidden subforms and use Openargs to pass a 1, 2, or 3, then a "Select Case" would set the visible property of one subform to TRUE.
Be aware that the data in a subform gets populated before the main form data.