以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 二次筛选求助 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=9833) |
||||
-- 作者:实话实说 -- 发布时间:2011/5/10 8:25:00 -- 二次筛选求助 表A窗口通过目录树进行了一次筛选,现需要在此基础上根据窗口文本框参数进行二次筛选,请帮忙写出筛选按钮的代码
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/5/10 8:32:00 -- Dim Filter As String If e.Form.Controls("TextBox1").Value > "" Then Filter = "颜色 = \'" & e.Form.Controls("TextBox1").Value & "\'" End If If e.Form.Controls("TextBox2").Value > "" Then If Filter > "" Then Filter = Filter & " And " End If Filter = "用户 = \'" & e.Form.Controls("TextBox2").Value & "\'" End If If Tables("表A").Filter > "" Then Filter = Filter & " And " & Tables("表A").Filter End If Tables("表A").Filter = Filter |
||||
-- 作者:lihe60 -- 发布时间:2011/5/10 8:33:00 -- 帮助里有的。
|
||||
-- 作者:lihe60 -- 发布时间:2011/5/10 8:34:00 -- 标题是“一个例子”。 |
||||
-- 作者:kylin -- 发布时间:2011/5/10 8:38:00 -- 每次目录树筛选后,用一个公共变量把这个筛选条件记录下来,一旦有二次筛选条件录入后,你就可以灵活随你所想了。 |
||||
-- 作者:lihe60 -- 发布时间:2011/5/10 8:46:00 -- 生成一个临时表。想用的时候把这个临时表调出来。 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/5/10 8:47:00 -- 以下是引用lihe60在2011-5-10 8:46:00的发言:
生成一个临时表。想用的时候把这个临时表调出来。
歪主意,这届简单的问题,何须如此复杂,看二楼。 |
||||
-- 作者:实话实说 -- 发布时间:2011/5/10 8:47:00 -- 以下是引用lihe60在2011-5-10 8:34:00的发言:
标题是“一个例子”。 那是一次筛选,我要的是二次筛选。 谢狐爸 |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/5/10 8:48:00 -- 我给你的就是二次筛选,在现有筛选的基础上再次进行。 [此贴子已经被作者于2011-5-10 8:48:04编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/5/10 8:52:00 -- 如下设置筛选按钮的代码,会更合理:
Dim Value()As String Dim Filter As String Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1") If trv.SelectedNode IsNot Nothing Then Value = trv.SelectedNode.FullPath.Split("\\") Select Case trv.SelectedNode.Level Case 0 Filter ="[分类] = \'" & Value(0) & "\'" Case 1 Filter ="[分类] = \'" & Value(0) & "\' And [型号] = \'" & Value(1) & "\'" Case 2 Filter ="[分类] = \'" & Value(0) & "\' And [型号] = \'" & Value(1) & "\' And [规格] = \'" & Value(2) & "\'" End Select End If If e.Form.Controls("TextBox1").Value > "" Then If Filter > "" Then Filter = Filter & " And " End If Filter = "颜色 = \'" & e.Form.Controls("TextBox1").Value & "\'" End If If e.Form.Controls("TextBox2").Value > "" Then If Filter > "" Then Filter = Filter & " And " End If Filter = "用户 = \'" & e.Form.Controls("TextBox2").Value & "\'" End If If Tables("表A").Filter > "" Then Filter = Filter & " And " & Tables("表A").Filter End If Tables("表A").Filter = Filter |