0

我想要过滤子表单 ( SubSearchMaster_frm) 的表单上有一个组合框。

我收到:

运行时错误 3464:表达式中的数据类型不匹配。

代码如下:

Private Sub CboNIIN_AfterUpdate()
    Me.SubSearchMaster_frm.Form.Filter = "[NIIN] = " & Me.CboNIIN
    Me.SubSearchMaster_frm.Form.FilterOn = True
End Sub

子表单是一个查询。

我也试过:

Private Sub CboNIIN_AfterUpdate()
    Dim sql As String
    sql = "Select * from SubSearchMaster_frm where ([NIIN] = " & Me.CboNIIN & ") From subsearchmaster_frm"
    Me.SubSearchMaster_frm.Form.RecordSource = sql
    Me.SubSearchMaster_frm.Form.Requery
End Sub

但我也遇到了错误。

4

1 回答 1

1

由于您已声明该NIIN字段是文本数据类型,因此您需要用单引号或双引号将过滤器值括起来,否则您将收到熟悉的数据类型不匹配错误消息。

例如:

Me.SubSearchMaster_frm.Form.Filter = "[NIIN] = '" & Me.CboNIIN & "'"

如果没有引号,则会提供一个数值,从而导致数据类型不匹配。

于 2019-12-29T22:50:43.550 回答