I asked just that question on May first and got answers that helped
Check the responses to my post 'Record source on Subform'
I have a main form with a control that links the first subform which is in
datasheet view
On the on current event of that form I create the SQL for the record source
of the third form
on the on current event of the second form I put code to build an SQL string
strSQL from info on form two and use that to change the record source in
form 3
Dim strSQL, strCriteria As String
strSQL = "SELECT NDEWelds.ProjectID, NDEWelds.Spool, NDEWelds.TaskCode,
NDEWelds.WeldLetter, NDEWelds.Needed, NDEWelds.Done, NDEWelds.NDEPerformed,
NDEWelds.NDEDate, NDEWelds.Weld, NDEWelds.Visual, NDEWelds.VisualDate " _
& "FROM NDEWelds " _
& "WHERE Projectid='" & Me.ProjectID & "' AND Spool ='" & Me.Spool & "'"
_
& "ORDER BY NDEWelds.ProjectID, NDEWelds.Spool, NDEWelds.WeldLetter "
Me.Parent.NDEWeld.Form.RecordSource = strSQL
NDEWeld is the name of the third form (second subform)