【发布时间】:2018-11-26 18:00:43
【问题描述】:
当文本中有括号时,我有一些导航按钮不起作用。文本来自组合框,我从中获取一个值并执行 findfirst 。在我用括号击中值之前,这很好用。例如 3D-1(A)-461 会抛出 2423 错误。
本来我打算使用recordset.movenext,但我有三个子表单必须重新查询,我认为这是最好的方法。
感谢您的帮助。
If TCTOfilt.ListIndex <> TCTOfilt.ListIndex - 1 Then
TCTOfilt.ListIndex = TCTOfilt.ListIndex + 1
Forms!frmMasterDashboard.Requery
Forms!frmMasterDashboard!subFrmApplicNotes.Form.Requery
Dim rst As Recordset
Set rst = CurrentDb.OpenRecordset(Name:="ACbyTCTO", Type:=RecordsetTypeEnum.dbOpenDynaset)
rst.FindFirst Criteria:=BuildCriteria(Field:="[TCTO Number]", FieldType:=dbText, Expression:=Me.TCTOfilt)
If Not rst.NoMatch Then
Me!subFrmOEMNOI.Form.Requery
Else
Exit Sub
End If
Else
TCTOfilt.ListIndex = TCTOfilt.ListCount + 1
Forms!frmMasterDashboard.Requery
Forms!frmMasterDashboard!subFrmApplicNotes.Form.Requery
Set rst = CurrentDb.OpenRecordset(Name:="ACbyTCTO", Type:=RecordsetTypeEnum.dbOpenDynaset)
rst.FindFirst Criteria:=BuildCriteria(Field:="[TCTO Number]", FieldType:=dbText, Expression:=Me.TCTOfilt)
If Not rst.NoMatch Then
Me!subFrmOEMNOI.Form.Requery
Else
Exit Sub
End If
End If
【问题讨论】:
-
这很奇怪。括号在 Access 字段中没有特定含义。哪一行代码导致了错误?
-
它没有给我行号,但我相信它是 Expression:=Me.TCTOfilt。当该变量中包含正常文本时,按钮可以找到。但是括号打破了它
-
什么是
BuildCriteria?那个方法是你写的吗? -
是的,它用于两个组合框过滤一个和另一个。
-
OH BuildCriteria 是我发送给 rst.FindFirst 的标准。它给出了要查找的字段、字段类型,最后是要搜索的表达式。 rst.FindFirst Criteria:=BuildCriteria(Field:="[TCTO Number]", FieldType:=dbText, Expression:=Me.TCTOfilt)
标签: ms-access