Foxtable(狐表)用户栏目专家坐堂 → [求助]多列筛选


  共有4703人关注过本帖树形打印复制链接

主题:[求助]多列筛选

帅哥哟,离线,有人找我吗?
PMC5332
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:48 积分:500 威望:0 精华:0 注册:2018/8/15 11:39:00
[求助]多列筛选  发帖心情 Post By:2022/4/24 9:50:00 [只看该作者]

想对表A前四列任意列的内容进行连续筛选,每次输入新的查找内容后,将在上一结果内筛选。以下代码是不是哪里没弄对?
Dim tbl As Table = Tables("表A")
txt1 = "'%" & txt1 & "%'"
图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看
txt2 = "'%" & txt2 & "%'"
txt3 = "'%" & txt3 & "%'"
txt4 = "'%" & txt4 & "%'"
Filter =  "第一列 Like " & txt1 & " Or 第二列 Like " & txt1 & " Or 第三列 Like " & txt1 & " Or  第四列 Like " & txt1
tbl.Filter = Filter
Filter = Filter And ("第一列 Like " & txt2 & " Or 第二列 Like " & txt2 & " Or 第三列 Like " & txt2 & " Or  第四列 Like " & txt2) 
tbl.Filter = Filter 

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110669 积分:563259 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/24 9:57:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
PMC5332
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:48 积分:500 威望:0 精华:0 注册:2018/8/15 11:39:00
  发帖心情 Post By:2022/4/24 10:06:00 [只看该作者]

这个我看过,就是想看看有没有可以不指定列的筛选? 比如我这种情况,如果指定列进行筛选根本就不行。
数据非常多,想每输入一次关键词就能缩小范围,多次输入后就能找个仅剩的几个选项。如果这种功能不好实现的话,也请告知声,我再研究下。本想对每次的结果进行辅助列标记的,但影响速度。

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110669 积分:563259 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/4/24 10:22:00 [只看该作者]

帮助的用法一样可以用到多个列,要学会变通

Dim Filter As String
With
 e.Form.Controls("cmbProduct")
    
If .Value IsNot Nothing Then
        Filter = 
"(第一列 like '%" & .Value & "%' or 第二列 like '%" & .Value & "%')"
    End If
End
 With
With
 e.Form.Controls("cmbCustomer")
    
If .Value IsNot Nothing Then
        
If Filter > "" Then
            Filter = Filter & 
" And "
        
End If
        Filter = Filter & 
"(第一列 like '%" & .Value & "%' or 第二列 like '%" & .Value & "%')"
    
End If
End
 With

 回到顶部