【发布时间】:2019-01-17 09:49:23
【问题描述】:
我遇到了这个问题:
运行时错误“3831”:多值字段“[Type]”不能用于 WHERE 或 HAVING 子句
这是我的代码:
Private Sub Command379_Click
Dim strsearch as String
Dim strText as String
strText = Me.TxtSearch.Value
strsearch = "Select * from qryInfo where (([Supplier Name] LIKE ""*" & strText & "*"") OR ([Type] LIKE ""*" & strText & "*""))"
Me.RecordSource = strsearch
End Sub
[Type] 由一个多值列表组成。
我尝试输入[Type].Value,但也没有用。它改为返回此消息:
运行时错误 3126。名称 '[qryInfo].[tblGeneralInfo].[Supplier Name]' 的括号无效
谁能告诉我如何解决这个问题?
【问题讨论】:
-
.Value 应该可以工作。评论support.office.com/en-us/article/…
-
从长远来看,解决这个问题的方法是不使用 MVF。 stackoverflow.com/questions/1461582/… -- utteraccess.com/forum/Multi-Fields-Evils-Lo-t1991337.html
-
Type 也是保留字,所以不是一个好的选择。
-
@June7 出于某种原因, .Value 甚至不适合我。我收到此消息:名称“[qryInfo].[tblGeneralInfo].[Supplier Name]”的括号无效
-
如果
[Type].Value不起作用,问题可能在于qryInfo的生成方式。提供相应的 SQL 代码以及原始表的结构。