Foxtable(狐表)用户栏目专家坐堂 → 关键字筛选


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

主题:关键字筛选

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


加好友 发短信
等级:幼狐 帖子:108 积分:671 威望:0 精华:0 注册:2021/9/24 17:07:00
  发帖心情 Post By:2021/9/30 16:05:00 [只看该作者]

Dim Filter As String
With e.Form.Controls("店铺名称1")
    If .Value IsNot Nothing Then
        Filter = "店铺名称 = '" & .Value & "'"
    End If
End With
With e.Form.Controls("产品类别1")
    If .Value IsNot Nothing Then
        If Filter > "" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "产品类别 = '" & .Value & "'"
    End If
End With
With e.Form.Controls("处理人1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "处理人 = '" & .Value & "'"
    End If
End With
With e.Form.Controls("开始1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "记录时间 >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("结束1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "记录时间 <= #" & .Value & "#"
    End If
End With
Dim txt1 As String = e.Form.Controls("TextBox4").Text
Dim tbl As Table = Tables("table_3")
If txt1 = "" Then
    tbl.Filter = ""
Else
    Dim Values() As String
    Values = txt1.split(",")
    Dim f As String
    For Index As Integer = 0 To Values.Length - 1
        If f > "" Then f = f & " or "
        Dim txt As String =Values(Index)
        txt = "'%" & txt & "%'"
        f = f & "店铺名称 Like " & txt & " Or 单号 Like " & txt & " Or 处理人 Like " & txt & " Or 发货仓库 Like" & txt & " Or 物流公司 Like" & txt & " Or 赠送SKU Like" & txt & " Or 客户姓名 Like" & txt & " Or 系统单号 Like" & txt & " Or 产品类别 Like " & txt & " Or 配件SKU Like " & txt & " Or 产品SKU Like " & txt  & " Or 联系方式 Like " & txt & " Or 追踪号 Like " & txt & " Or 处理方式 Like " & txt & " Or 备注 Like " & txt & " Or 回访 Like" & txt & " Or 状态 Like" & txt & " Or 寄送地址 Like " & txt & " Or [状况描述 原因] Like " & txt
        
    Next
    
    tbl.Filter = f
End If

If Filter > "" Then
    Tables("table_3").Filter = Filter
End If

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


加好友 发短信
等级:幼狐 帖子:108 积分:671 威望:0 精华:0 注册:2021/9/24 17:07:00
  发帖心情 Post By:2021/9/30 16:06:00 [只看该作者]

老师我这里是不是有问题,他现在关键字跟其他框好像做不到多条件检索

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


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

Tables("table_3").Filter = Filter & “ and ” & f & ")"

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


加好友 发短信
等级:幼狐 帖子:108 积分:671 威望:0 精华:0 注册:2021/9/24 17:07:00
  发帖心情 Post By:2021/9/30 16:32:00 [只看该作者]

多条件查询是不是这样改好像不是很得,老师麻烦帮我看一下哪里出问题了,谢谢
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:多条件查询.txt


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


加好友 发短信
等级:超级版主 帖子:107846 积分:548581 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/30 16:47:00 [只看该作者]

到底要处理什么逻辑?这玩意其实也不复杂,就和小学括号的计算的优先级差不多。理解一下

(条件1 and 条件2) or (条件3 and  条件4)  = (条件1 交集 条件2) 并集 (条件3 交集 条件4) 

条件1 and  (条件2 or 条件3) and 条件4  = 条件1 交集 (条件2 并集 条件3) 交集 条件4 

自己输出最终条件核对,看是否符合需要的判断逻辑,合理加上括号进行处理


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


加好友 发短信
等级:幼狐 帖子:108 积分:671 威望:0 精华:0 注册:2021/9/24 17:07:00
  发帖心情 Post By:2021/9/30 17:00:00 [只看该作者]

Tables("table_3").Filter = Filter & “ and ” & f & ")" 老师代码的这句这么改进去吗
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:12344.txt


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


加好友 发短信
等级:超级版主 帖子:107846 积分:548581 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/9/30 17:19:00 [只看该作者]

……
       Filter2 = Filter2 & "处理人 = '" & .Value & "'"
    End If
End With
Dim txt2 As String = e.Form.Controls("TextBox6").Text
Dim tb2 As Table = Tables("主控窗口_Table2")
dim f3 as string = Filter
if Filter2 > "" then
        If f3>"" Then
            f3 = "(" & f3 & ") or (" & Filter2 & ")"
else
f3 = Filter2 
        End If
end if
If txt2 = "" Then
    tb2.Filter = ""
Else
    Dim Values() As String
    Values = txt2.split(",")
    For Index As Integer = 0 To Values.Length - 1
        If f3 > "" Then f3= f3 & " or "
        Dim txt As String =Values(Index)
        txt = "'%" & txt & "%'"
        f3= f3 & "店铺名称 Like " & txt & " Or 单号 Like " & txt & " Or 处理人 Like " & txt & " Or 发货仓库 Like" & txt & " Or 物流公司 Like" & txt & " Or 赠送SKU Like" & txt & " Or 客户姓名 Like" & txt & " Or 系统单号 Like" & txt & " Or 产品类别 Like " & txt & " Or 配件SKU Like " & txt & " Or 产品SKU Like " & txt  & " Or 联系方式 Like " & txt & " Or 追踪号 Like " & txt & " Or 处理方式 Like " & txt & " Or 备注 Like " & txt & " Or 回访 Like" & txt & " Or 状态 Like" & txt & " Or 寄送地址 Like " & txt & " Or [状况描述 原因] Like " & txt
        
    Next
End If

Tables("主控窗口_Table2").Filter =f3

 回到顶部
总数 17 上一页 1 2