以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于筛选后继续筛选的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=49681) |
|
-- 作者:smljc19 -- 发布时间:2014/4/22 15:10:00 -- 关于筛选后继续筛选的问题 如图一所示,有一个表,然后有筛选有查询,所有的查询和筛选都是在下拉框里面选择内容后自动筛选 我的想法是,第一次筛选后,第二次的筛选是在第一次的基础上筛选,第三次的筛选又是在第2次的基础上,请教代码要怎么弄
|
|
-- 作者:smljc19 -- 发布时间:2014/4/22 15:11:00 -- 郁闷,怎么图片没显示出来呢? |
|
-- 作者:Bin -- 发布时间:2014/4/22 15:12:00 --
|
|
-- 作者:smljc19 -- 发布时间:2014/4/22 15:12:00 -- ![]() ![]() 这个是图一,窗体的结构 两个筛选区域
|
|
-- 作者:smljc19 -- 发布时间:2014/4/22 15:14:00 -- 总共有四个筛选的关键字下拉框,希望得到的结果是,不管第一个筛选的哪个字段,第二次筛选都是在第一次的基础上筛选,以后类似。。。 |
|
-- 作者:Bin -- 发布时间:2014/4/22 15:15:00 -- 假设第一次筛选 tables("表A").Filter="(借款类型=\'类型1\')" 第二次筛选 想基于第一次筛选,筛选借款人姓名=张三的 tables("表A").Filter=tables("表A").Filter & " and (借款人=\'张三\')" 这样实际上的筛选条件是 tables("表A").Filter="(借款类型=\'类型1\') and (借款人=\'张三\')" 也就实现了你想要的效果.
|
|
-- 作者:Bin -- 发布时间:2014/4/22 15:15:00 -- 括号是必须要有的,因为多条件下,括号才能保证每次筛选的条件作为一个整体. |
|
-- 作者:smljc19 -- 发布时间:2014/4/22 15:26:00 -- o(︶︿︶)o 唉,有点困难,暂时放一边了 希望能对 Filter 弄一个属性,判断表是否被筛选,本次筛选是否在继续筛选还是重新筛选。。 这个属性对于多选的表还是经常能用到的。。
|
|
-- 作者:有点甜 -- 发布时间:2014/4/22 15:46:00 -- 以下是引用smljc19在2014-4-22 15:26:00的发言:
o(︶︿︶)o 唉,有点困难,暂时放一边了 希望能对 Filter 弄一个属性,判断表是否被筛选,本次筛选是否在继续筛选还是重新筛选。。
这个属性对于多选的表还是经常能用到的。。
呃不难吧?
原本是 1、Tables("xxx").filter = "abc" 2、Tables("xxx").filter = "cef"
现在只是变成 1、Tables("xxx").filter = "(" & Tables("xxx").filter & ")" & "and (abc)" 2、Tables("xxx").filter = "(" & Tables("xxx").filter & ")" & "and (cef)" |
|
-- 作者:smljc19 -- 发布时间:2014/4/22 16:34:00 -- 问题你无法预测用户是先选择哪一项作为筛选的第一项,所以以后的第二第三项就很难判断了嘛 |