Microsoft访问Navigate记录组合框

时间:2018-01-29 23:21:48

标签: vba ms-access search access-vba

我正在Microsoft Access中创建一个表单。在这种形式中,我希望用户能够输入[Tag]号码并将其重定向到该Tag的记录。

每次尝试搜索记录时,我都会收到数据不匹配错误。 标签有2种格式第1种格式是6种数字[123456]第二种格式是3种字母,后跟6种数字[ABC123456]。

Private Sub RF_SEARCH_BY_TAG_COMBO_BOX_AfterUpdate()
' Find the record that matches the control.
Dim rs As Object

Set rs = Me.Recordset.Clone
rs.FindFirst "[Tag]=" & Str(Nz(Me![RF_SEARCH_BY_TAG_COMBO_BOX], 0))
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub

1 个答案:

答案 0 :(得分:0)

Komakino,因为Tag必须是字符串,所以将FindFirst行重写为:

rs.FindFirst "[Tag]='" & Nz(Me.RF_SEARCH_BY_TAG_COMBO_BOX.Value, "") & "'"

三个修复:

  1. 正确引用搜索值

  2. Nz()函数默认为空字符串""

  3. 使用点表示法引用RF_SEARCH_BY_TAG_COMBO_BOX