Foxtable(狐表)用户栏目专家坐堂 → 多条件筛选


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

主题:多条件筛选

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
多条件筛选  发帖心情 Post By:2016/2/16 9:42:00 [显示全部帖子]

从银行现金汇总表的交易户名列及涉及人员提取户名设置查询条件,从银行明细表提取数据,为此写了以下代码,但是该代码实现不了我所想要的功能

Dim str1 As String
Dim str2 As String
If Tables("银行现金汇总").current.IsNull("交易户名") = False AndAlso Tables("银行现金汇总").current.IsNull("涉及人员") = False Then '如果工号列不为空
    Dim nms1() As String = Tables("银行现金汇总").current("交易户名").Split(",") '将工号列内容拆分成数组
    Dim nms2() As String = Tables("银行现金汇总").current("涉及人员").Split(",") '将工号列内容拆分成数组
    For Each nm1 As String In nms1 '遍历参与加工此产品的每个工号
        str1 = str1 & " & nm1 & " & ","
    Next
    For Each nm2 As String In nms2 '遍历参与加工此产品的每个工号
        str2 = str2 & " & nm2 & " & ","
    Next
    'Tables("交易明细_table1").filter = "["交易户名"] In {str1} And ["对方户名"] In {str2}"
End If


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 9:50:00 [显示全部帖子]

Tables("表A").Filter = "[对方户名] In ('郭俊鹏') and [交易户名] In ('张三','李四','王五','李六')"   上述代码在组合条件时 单引号怎么解决呀?

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:06:00 [显示全部帖子]

这是修改后的代码

Dim str1 As String
Dim str2 As String
If Tables("银行现金汇总").current.IsNull("交易户名") = False AndAlso Tables("银行现金汇总").current.IsNull("涉及人员") = False Then '如果工号列不为空
    Dim nms1() As String = Tables("银行现金汇总").current("交易户名").Split(",") '将工号列内容拆分成数组
    Dim nms2() As String = Tables("银行现金汇总").current("涉及人员").Split(",") '将工号列内容拆分成数组
    For Each nm1 As String In nms1 '遍历参与加工此产品的每个工号
        str1 = str1 & " & nm1 & " & ","
    Next
    For Each nm2 As String In nms2 '遍历参与加工此产品的每个工号
        str2 = str2 & " & nm2 & " & ","
    Next
    Tables("交易明细_table1").filter = " [交易户名] In '" & (str1) & "' And  [对方户名] In '" &  (str2) & "'"
End If


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:17:00 [显示全部帖子]

执行上述修改后的代码,错误提示如下:

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2015.12.22.1
错误所在事件:
详细错误信息:
语法错误: IN 关键字后面的项必须用逗号分隔,并且必须用括号括起来。


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:28:00 [显示全部帖子]

执行5楼代码错误提示

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2015.12.22.1
错误所在事件:加载[银行明细]失败!
详细错误信息:
至少一个参数没有被指定值。


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:37:00 [显示全部帖子]

如果是一个人,显示的结果是 张三 如果是两个人 显示的是 张三’,‘李四   如果是三个人 显示的是张三’,‘李四 ’,‘王五,格式还是不对


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:41:00 [显示全部帖子]

查的结果是空表,不知道是什么原因

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 10:53:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目9.foxdb


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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 19:26:00 [显示全部帖子]

张三、李四与直六的交易

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


加好友 发短信
等级:九尾狐 帖子:2236 积分:15335 威望:0 精华:0 注册:2015/7/18 10:10:00
  发帖心情 Post By:2016/2/16 19:40:00 [显示全部帖子]

如果数据全部加载14楼的代码没有问题了,但是没有全部加载的情况下,我把代码改成如下代码,为什么还是只显示10行数据呀,怎么能把不加载的所有符合条件的数据都查出来

Dim str1 As String
Dim str2 As String
If Tables("银行现金汇总").current.IsNull("交易户名") = False AndAlso Tables("银行现金汇总").current.IsNull("涉及人员") = False Then '如果工号列不为空
    str1  = Tables("银行现金汇总").current("交易户名").replace(chr(-23636), ",").Replace(",", "','")
    str2  = Tables("银行现金汇总").current("涉及人员").replace(chr(-23636), ",").Replace(",", "','")
    Tables("交易明细_table1").DataTable.loadfilter = "[交易户名] In ('" & str1 & "') And [对方户名] In ('" & str2 & "')"
    Tables("交易明细_table1").DataTable.load
End If


 回到顶部
总数 11 1 2 下一页