搜索条件不支持操作

时间:2013-03-07 23:26:35

标签: vba ms-access

我试图在VB中创建一个简单的搜索功能。它的构造如下:

Dim rst As recordSet
Dim lastName As String
Dim firstName As String
Dim eventTitle As String

'Current Record set
Set rst = CurrentDb.OpenRecordset("tblWebMeetingData")

If (IsNull(Me.txtFldLastName) = False) Then
    lastName = Me.txtFldLastName
    rst.FindFirst "[Last Name] = " & lastName
    MsgBox ("Found record")
Else
    MsgBox ("Record not found")
End If

If (IsNull(Me.txtFldFirstName) = False) Then
    firstName = Me.txtFldFirstName
End If

If (IsNull(Me.txtFldEventTitle) = False) Then
    eventTitle = Me.txtFldEventTitle
End If

但是我不断收到“此类对象不支持操作”的错误。是什么赋予了? “姓氏”字段在表格

中间隔开

2 个答案:

答案 0 :(得分:2)

如果这是引发错误的行......

rst.FindFirst "[Last Name] = " & lastName

[Last Name]可能是文本数据类型,因此请在.FindFirst字符串中使用引号。

rst.FindFirst "[Last Name] = '" & lastName & "'"

如果姓氏可能包含撇号,请加倍。

rst.FindFirst "[Last Name] = '" & Replace(lastName, "'", "''") & "'"

答案 1 :(得分:1)

我收到错误的原因是因为我试图对表对象而不是动态集或快照对象使用Find First方法。为了解决这个问题,我用.OpenRecordSet中的参数替换了一个SQL语句,该语句接收了我想要搜索的内容。

感谢您的帮助Hans Up,因为您所说的是为了工作所需要的。