使用Microsoft Access我想为包含空格的记录设置过滤器。我尝试使用'""'
进行双重转义无效。
我有一张这样的表:
ID Title
1 Green
2 Blue Yacht
3 Yellow
和一个只显示这些记录的表单。我现在设置过滤器时:
Form.Filter = "TestTable.Title LIKE '*Yellow*'"
它就像一个魅力。但是当试图过滤“Blue Yacht”
时Form.Filter = "TestTable.Title LIKE '*Blue Yacht*'"
我得到一个空的结果。只过滤 Blue 的工作就像它应该的那样。不知何故Access不喜欢过滤器中的空格。我怎样才能过滤“Blue”或“Blue Yacht”?
答案 0 :(得分:1)
这是非常奇怪的行为,它应该可以正常工作,你可以尝试使用Chr代码而不是空格:
Form.Filter = "TestTable.Title LIKE '*Blue" & Chr(32) & "Yacht*'"
答案 1 :(得分:1)
我在搜索同一问题的解决方案时偶然发现了这个旧线程。到目前为止我没有找到。我想知道这是Access上的错误还是什么。
所以,这是我的情况,我在下面尝试了两个过滤器。我正在努力过滤和填充数据表子表单。过滤器在组合盒中:柠檬酸盐,Paxgene,钠Herapin。
将sTType调暗为字符串 ... ... 1. sTType =" [Tube Type] LIKE'" &安培; Me.txtTubeType& " *'" 2. sTType =" [Tube Type] ='" &安培; Me.txtTubeType& "'" ... me.Filter = sTType
当选择Sodium Herapin并将其作为过滤器使用时,过滤器什么都没有,而我对其他文字过滤器没有任何问题。
Sol。:我向上插入了这段代码
me.txtTubeType = iif(InStr(Trim(Me.txtTubeType)," Sod")> 0," Sodium *",me.txtTubeType)
...
...
sTType = "[Tube Type] LIKE '" & Me.txtTubeType & "'"
me.Filter = sTType
解决方法有点粗糙,但它适用于我的情况。
干杯!