易表在线答疑技术与交流用户社区 → [求助]请教一个关于筛选的公式


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

主题:[求助]请教一个关于筛选的公式

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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/11/15 20:57:00 [显示全部帖子]


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/11/16 8:17:00 [显示全部帖子]

AddCol(GridName,"p",3, False ) And
在当前表增加一逻辑辅助列p:

Eval("ReplaceFor(GridName,""p"",-1,""用户编号"",""="","""+Substitute(ListFor(GridName,"用户编号","fty",-1),"|",""") And ReplaceFor(GridName,""p"",-1,""用户编号"",""="",""")+""")") And
替换p列的值为-1,条件是“fty”为-1的“用户编号”的所有行。
这里使用Eval的主要目的是解决“fty”勾选的不确定性。用了Eval函数“fty”勾选就任意了,使公式具有了通用性。
其中:ListFor(GridName,"用户编号","fty",-1)就是找出"fty"为-1的所有对应“用户编号”。
至于Eval函数的写法,请参考论坛相关贴子学习。

FilterFor("p","=",-1,2) And
筛选p列为-1的行;

ClearGrid("峰谷不平处理表") And
清除"峰谷不平处理表",最后剩一空行;

CopyRows("峰谷不平处理表","p","=",-1) And
将当前表p列等于-1的行拷贝到"峰谷不平处理表";

DelRow("峰谷不平处理表",1) And
删除"峰谷不平处理表"的第一行;

DeleteCol(GridName,"p")
最后删除p辅助列。


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2011/11/16 14:09:00 [显示全部帖子]

ReplaceFor(GridName,"p",-1,"用户编号","=","8102438288") And
ReplaceFor(GridName,"p",-1,"用户编号","=","8102470896") And
ReplaceFor(GridName,"p",-1,"用户编号","=","8102470895") And
ReplaceFor(GridName,"p",-1,"用户编号","=","8102470893") And
ReplaceFor(GridName,"p",-1,"用户编号","=","8102470891")

这个不是很好理解吗!说明你当前勾选的就是这5个用户编号。


 回到顶部