组合框上的参数值
Posted
技术标签:
【中文标题】组合框上的参数值【英文标题】:Parameter Value on Combo Box 【发布时间】:2017-06-13 09:28:41 【问题描述】:我正在尝试使用组合框过滤子表单。我有什么工作,但它不断提出一个“输入参数值”文本框。当我输入要过滤的值时,它会搜索子表单没有问题。我宁愿不必输入该值,因为它违背了组合框的目的。
这是我的 ComboBox 代码,
Private Sub ComboFE_AfterUpdate()
On Error GoTo Proc_Error
If IsNull(Me.ComboFE) Then
Me.SubFormPF.Form.Filter = ""
Me.SubFormPF.Form.FilterOn = False
Else
Me.SubFormPF.Form.Filter = "Lead_FE = " & Me.ComboFE
Me.SubFormPF.Form.FilterOn = True
End If
Proc_Exit:
Exit Sub
Proc_Error:
MsgBox "Error " & Err.Number & " in setting subform filter:" & vbCrLf & Err.Description
Resume Proc_Exit
End Sub
我已检查并确保所有名称都正确并与我的表格上的相应项目匹配。
有什么想法吗? 非常感谢
【问题讨论】:
如果Lead_FE
是文本列,则需要在值周围加上引号。 .Filter = "Lead_FE = '" & Me.ComboFE & "'"
成功了,非常感谢老兄!
【参考方案1】:
在文本列上应用过滤器时,值需要引号。
Me.SubFormPF.Form.Filter = "Lead_FE = '" & Me.ComboFE & "'"
为避免值本身包含引号时出现问题,请在此处使用 Gustav 的 CSql()
函数:https://***.com/a/36494189/3820271
Me.SubFormPF.Form.Filter = "Lead_FE = " & CSql(Me.ComboFE.Value)
这适用于所有数据类型。
【讨论】:
以上是关于组合框上的参数值的主要内容,如果未能解决你的问题,请参考以下文章