Do you have more information on the structure and relationships of the tables here? I am not sure why you would use a subform when the parent form doesn't really have a recordsource. Use a main form and just display the selected values using the On Current event in 3 unbound text boxes. Then create the recordsource for the parent table (it looks like, I don't have all the structure data). I would be inclined to put a WHERE clause on the button on the first form that launches the second form, something like:
Dim sLink As String
Dim sFirstParam As String
Dim sSecondParam As String
Dim sThirdParam As String
sFirstParam = Me.cboSpecies
sSecondParam = Me.cboSecond
sThirdParam = Me.cboThird
sLink = "[Species] = '" & sFirstParam & "' AND [Second] = '" & sSeconrdParam & "' AND [Third] = '" & sThirdParam & "'"
DoCmd.OpenForm sDocName, , , sLink
This assumes your parameters are strings.
Then use the on current event to display the parameters on the form. I would be inclined to use Public variables to hold these values to display in unbound text boxes on the second form.
Without the table structure, however, it is hard to propose an informed solution.
HTH
mmcdonal
Look it up at:
http://wrox.books24x7.com