【问题标题】:VBA Runtime Error 3131 MS access 2016 Pro PlusVBA 运行时错误 3131 MS access 2016 Pro Plus
【发布时间】:2019-07-11 14:13:41
【问题描述】:

所以下面的代码说有问题;但是,我想不通。

我正在尝试创建一个搜索表单,而 VBA 一直告诉我这是错误的。我根本不是编码人员,只是为我正在进行的项目做这件事。非常感谢任何帮助。

Private Sub search_Click()
Dim strsearch As String
Dim Task As String
'Check if a keyword entered or not
If IsNull(Me.txtSearch) Or Me.txtSearch = "" Then
   MsgBox "Please type last name of client.", vbOKOnly, "Keyword Needed"
   Me.txtSearch.BackColor = vbYellow
   Me.txtSearch.SetFocus
Else
    strsearch = Me.txtSearch.Value
    Task = "SELECT * FROM tbl_table-application WHERE ((Last_Name Like ""*" & strsearch & "*""))"
**   Me.RecordSource = Task**
   Me.txtSearch.BackColor = vbWhite
End If
End Sub

【问题讨论】:

  • 问题的错误代码是什么,在哪一行生成错误?
  • 我更喜欢设置 Filter 和 FilterOn 属性,而不是设置 RecordSource 属性。确切的错误信息是什么?

标签: vba ms-access


【解决方案1】:

表名有连字符,所以需要用 [ ] 括起来:[tbl_table-application]。建议不要在命名约定中使用空格或标点符号/特殊字符。只有下划线是可接受的例外,在没有 [ ] 的情况下也可以。

【讨论】:

    猜你喜欢
    • 2017-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多