Foxtable(狐表)用户栏目专家坐堂 → 字符串包含筛选


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

主题:字符串包含筛选

帅哥哟,离线,有人找我吗?
实话实说
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2012/12/22 14:35:00 [只看该作者]

不好意思,有点问题。我要的是包含筛选,在文本框输入“公司,手册”,应该筛选第1和第2条记录。

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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 15:06:00 [只看该作者]

正常,如果想要按照空格分割查询,可以这样。

Dim idxs As String = ""
Dim s1 As String = e.Form.Controls("文件名称").Value
If s1 > "" Then
    Dim arys() As String = s1.Split(" ")
    For Each r As Row In Tables("表A").rows
        Dim idx As Integer = r("文件名称").LastIndexOf("\")
        For Each ary As String In arys
            If r("文件名称").Substring(idx) Like "*" & ary & "*" Then
                idxs += r("_identify") & ","
            End If
        Next
    Next
    Tables("表A").Filter = "_Identify in (" & idxs.Trim(",") & ")"
End If

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


加好友 发短信
等级:四尾狐 帖子:867 积分:6210 威望:0 精华:0 注册:2012/11/24 20:44:00
回复:(blackzhu)Dim Filter,s1 As StringDim idxs ...  发帖心情 Post By:2012/12/22 15:13:00 [只看该作者]

还要考虑到搜索到没有的文件名时提示“未找到相关文件”,你这个如果搜索“服务器”时,就会出错。

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2012/12/22 15:33:00 [只看该作者]

以下是引用lin_hailun在2012-12-22 15:06:00的发言:
正常,如果想要按照空格分割查询,可以这样。

Dim idxs As String = ""
Dim s1 As String = e.Form.Controls("文件名称").Value
If s1 > "" Then
    Dim arys() As String = s1.Split(" ")
    For Each r As Row In Tables("表A").rows
        Dim idx As Integer = r("文件名称").LastIndexOf("\")
        For Each ary As String In arys
            If r("文件名称").Substring(idx) Like "*" & ary & "*" Then
                idxs += r("_identify") & ","
            End If
        Next
    Next
    Tables("表A").Filter = "_Identify in (" & idxs.Trim(",") & ")"
End If

不能包含筛选


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 15:38:00 [只看该作者]

 呃,不懂你的意思。

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2012/12/22 15:57:00 [只看该作者]

以下是引用lin_hailun在2012-12-22 15:38:00的发言:
 呃,不懂你的意思。

本字符串包含筛选有两个需求:1、部分字符串筛选,上面代码已经解决;2、包含筛选,看7楼的实例(窗口表A中“筛选按钮”代码)和11楼描述。


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 16:02:00 [只看该作者]

以下是引用实话实说在2012-12-22 15:57:00的发言:

本字符串包含筛选有两个需求:1、部分字符串筛选,上面代码已经解决;2、包含筛选,看7楼的实例(窗口表A中“筛选按钮”代码)和11楼描述。


分割符是空格。自己改一下。

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


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57596 威望:0 精华:15 注册:2008/9/1 9:45:00
  发帖心情 Post By:2012/12/22 16:04:00 [只看该作者]

Dim idxs As String = ""
Dim s1 As String = e.Form.Controls("文件名称").Value
If s1 > "" Then
   
Dim arys() As String = s1.Split(",")    '注意逗号   小林写的空格
    For Each r As Row In Tables("表A").rows
        Dim idx As Integer = r("文件名称").LastIndexOf("\")
        For Each ary As String In arys
            If r("文件名称").Substring(idx) Like "*" & ary & "*" Then
                idxs += r("_identify") & ","
            End If
        Next
    Next
    Tables("表A").Filter = "_Identify in (" & idxs.Trim(",") & ")"
End If

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


加好友 发短信
等级:九尾狐 帖子:2649 积分:19390 威望:0 精华:1 注册:2008/9/12 9:19:00
  发帖心情 Post By:2012/12/22 16:27:00 [只看该作者]

可以了,希望加个容错的条件:即13楼的问题,否则会跳出错误提示窗口


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


加好友 发短信
等级:狐神 帖子:6708 积分:34304 威望:0 精华:11 注册:2012/8/18 23:10:00
  发帖心情 Post By:2012/12/22 16:31:00 [只看该作者]

 
Dim idxs As String = ""
Dim s1 As String = e.Form.Controls("文件名称").Value
If s1 > "" Then
   
Dim arys() As String = s1.Split(",")    '注意逗号   小林写的空格
    For Each r As Row In Tables("表A").rows
        Dim idx As Integer = r("文件名称").LastIndexOf("\")
        For Each ary As String In arys
            If r("文件名称").Substring(idx) Like "*" & ary & "*" Then
                idxs += r("_identify") & ","
            End If
        Next
    Next
    If idxs > "" then
Tables("表A").Filter = "_Identify in (" & idxs.Trim(",") & ")"
End If

 回到顶部
总数 24 上一页 1 2 3 下一页