以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]我想给右键增加一个取消上一步筛选或者在窗口里增加个取消上一步筛选的功能怎么做 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=194321) |
-- 作者:fx719 -- 发布时间:2024/11/28 11:18:00 -- [求助]我想给右键增加一个取消上一步筛选或者在窗口里增加个取消上一步筛选的功能怎么做 多次筛选后,想返回到上一次的筛选结果 |
-- 作者:有点蓝 -- 发布时间:2024/11/28 11:21:00 -- 使用一个全局变量,比如集合,每一次筛选就把条件放入集合。上一次就是集合里倒数第二项的条件 |
-- 作者:lur320 -- 发布时间:2024/11/28 14:19:00 -- 自定义函数 creatfilters 筛选之后记录当前筛选的表和筛选规则 If Vars("tbname") <> "" Then If Vars("tbname") = CurrentTable.Name Then Vars("tbname") = CurrentTable.Name tbfilters.Add(CurrentTable.Filter) Else Vars("tbname") = CurrentTable.Name tbfilters.Clear tbfilters.Add(CurrentTable.Filter) End If Else Vars("tbname") = CurrentTable.Name tbfilters.Clear tbfilters.Add(CurrentTable.Filter) End If withdrawfilter 撤回筛选 If Vars("tbname") <> "" Then If Vars("tbname") = CurrentTable.Name Then Try Dim c As Integer = tbfilters.Count - 1 If c = 0 Then CurrentTable.Filter = "" tbfilters.Clear Else CurrentTable.Filter = tbfilters(c - 1) tbfilters.RemoveAt(c) End If Catch ex As Exception End Try Else Vars("tbname") = Nothing tbfilters.Clear End If End If |