0
votes

I would like to Filter my sub form based on my Combo box filter. I'm getting code error. I need help with this.

After Update I have written one event:

Private Sub cboSelected_AfterUpdate()
Dim MyName As String
MyName = " select * from [ITP_Checklist Log] where ([ITP_Checklist Log].[Name] = " & Me.cboSelected & " )"

Me.ITP_Checklist_Log_subform.Form.RecordSource = MyName

Me.ITP_Checklist_Log_subform.Form.Requery

End Sub

Error:

Run-time error '3464'
Data Type Mismatch in Criteria expression.

enter image description here

enter image description here

1

1 Answers

0
votes

Use quotes for string values - and Requery is only needed if you don't change the recordsource:

Private Sub cboSelected_AfterUpdate()

    Dim MyName As String

    MyName = "select * from [ITP_Checklist Log] where ([ITP_Checklist Log].[Name] = '" & Me!cboSelected.Value & "')"

    Debug.Print MyName

    If Me!ITP_Checklist_Log_subform.Form.RecordSource = MyName Then
        Me!ITP_Checklist_Log_subform.Form.Requery
    Else
        Me!ITP_Checklist_Log_subform.Form.RecordSource = MyName
    End If

End Sub