Vba 访问子窗体的选择取决于组合框

Vba 访问子窗体的选择取决于组合框,vba,ms-access,ms-access-2010,Vba,Ms Access,Ms Access 2010,我想根据我的组合框过滤器过滤我的子表单。我收到了代码错误。我需要帮助 更新后,我写了一个事件: 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_subfor

我想根据我的组合框过滤器过滤我的子表单。我收到了代码错误。我需要帮助

更新后,我写了一个事件:

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
错误:

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


对字符串值使用引号-只有在不更改记录源的情况下才需要重新查询:

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

谢谢你的回答@Gustav。但这次出现编译错误:语法错误插入带有
Debug.Print
的行,并告诉我们您看到了什么。它以红色突出显示。。。如果我!ITP_Checklist_Log_subform.Form.RecordSource=MyName以及调试了哪些内容。打印出MyName?抱歉@gustav,我是新手。请看一下我的屏幕。