Hi June,



I have thought about this topic quite a bit, and I've decided to use a RESET button:

Code:
Private Sub cboODMID_AfterUpdate()
    Me.cboOEMID.RowSource = " SELECT tabOEM.IDOEM, tabOEM.txtOEMName, tabProject.logRunning, tabProject.lnkODM" & _
                            " FROM tabOEM INNER JOIN tabProject ON tabOEM.IDOEM = tabProject.lnkOEM" & _
                            " GROUP BY tabOEM.IDOEM, tabOEM.txtOEMName, tabProject.logRunning, tabProject.lnkODM, tabProject.lnkOEM " & _
                            " HAVING (((tabProject.logRunning) = True) And ((tabProject.lnkODM) = [Forms]![frmAccount].[cboODMID]))" & _
                            " ORDER BY tabOEM.txtOEMName;"
    'Me.cboOEMID = Me.cboOEMID.ItemData(0)
    Me.cboOEMID.Requery
    
     Me.cboProjectID.RowSource = " SELECT tabProject.IDProject, tabProject.txtProjectName, tabProject.lnkOEM, tabProject.lnkODM" & _
                                    " FROM tabProject" & _
                                    " WHERE (((tabProject.lnkOEM) = [Forms]![frmAccount].[cboOEMID]) And ((tabProject.lnkODM) = [Forms]![frmAccount].[cboODMID] ) And ((tabProject.logRunning) = True))" & _
                                    " ORDER BY tabProject.txtProjectName;"
    Me.cboProjectID.Requery
End Sub
Private Sub cboOEMID_AfterUpdate()
    Me.cboODMID.RowSource = " SELECT tabODM.IDODM, tabODM.txtODMName, tabProject.logRunning, tabProject.lnkOEM" & _
                            " FROM tabODM INNER JOIN tabProject ON tabODM.IDODM = tabProject.lnkODM" & _
                            " GROUP BY tabODM.IDODM, tabODM.txtODMName, tabProject.logRunning, tabProject.lnkOEM, tabProject.lnkODM" & _
                            " HAVING (((tabProject.logRunning) = True) And ((tabProject.lnkOEM) = [Forms]![frmAccount].[cboOEMID]))" & _
                            " ORDER BY tabODM.txtODMName;"
    'Me.cboODMID = Me.cboODMID.ItemData(0)
    Me.cboODMID.Requery
    
    Me.cboProjectID.RowSource = " SELECT tabProject.IDProject, tabProject.txtProjectName, tabProject.lnkOEM, tabProject.lnkODM" & _
                                    " FROM tabProject" & _
                                    " WHERE (((tabProject.lnkOEM) = [Forms]![frmAccount].[cboOEMID]) And ((tabProject.lnkODM) = [Forms]![frmAccount].[cboODMID] ) And ((tabProject.logRunning) = True))" & _
                                    " ORDER BY tabProject.txtProjectName;"
    
    Me.cboProjectID.Requery
End Sub
Private Sub cboProjectID_AfterUpdate()
    [Forms]![frmAccount].[cboODMID].Requery
    [Forms]![frmAccount].[cboOEMID].Requery
     ' when Project ID is update cboOEMID, cboODMID are adjusted accordingly
     
     Me.cboOEMID.RowSource = " SELECT qryProjectOpen.lnkOEM, qryProjectOpen.txtOEMName" & _
                             " FROM qryProjectOpen" & _
                             " WHERE qryProjectOpen.IDProject =" & Me.cboProjectID

    Me.cboOEMID = Me.cboOEMID.ItemData(0)
    Me.cboOEMID.Requery
    Me.cboODMID.RowSource = " SELECT qryProjectOpen.lnkODM, qryProjectOpen.txtODMName" & _
                             " FROM qryProjectOpen" & _
                             " WHERE qryProjectOpen.IDProject =" & Me.cboProjectID
    
    Me.cboODMID = Me.cboODMID.ItemData(0)
    Me.cboODMID.Requery
End Sub
Private Sub cmdReset_Click()
' initialize row sources for all comboboxes
    Me.cboOEMID = Null
    Me.cboODMID = Null
    Me.cboProjectID = Null
    Me.cboOEMID.RowSource = " SELECT tabOEM.IDOEM, tabOEM.txtOEMName " & _
                            " FROM tabOEM" & _
                            " ORDER BY tabOEM.txtOEMName;"
                            
    Me.cboOEMID.Requery
    
    Me.cboODMID.RowSource = " SELECT tabODM.IDODM, tabODM.txtODMName " & _
                            " FROM tabODM" & _
                            " ORDER BY tabODM.txtODMName;"
    Me.cboODMID.Requery
    
    Me.cboProjectID.RowSource = " SELECT qryProjectOpen.IDProject, qryProjectOpen.txtProjectName" & _
                                " FROM qryProjectOpen" & _
                                " ORDER BY qryProjectOpen.txtProjectName;"
    Me.cboProjectID.Requery
    
End Sub
Thank you very much for your support.