易表在线答疑技术与交流用户社区 → 检查第21名是否有并列


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

主题:检查第21名是否有并列

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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/8/14 10:56:00 [只看该作者]

不会吧
egd文件下载

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


加好友 发短信
等级:黑侠 帖子:731 积分:4099 威望:0 精华:0 注册:2006/8/29 23:00:00
  发帖心情 Post By:2010/8/14 11:54:00 [只看该作者]

并列的21名和并列的42名,这些并列的名次加0.01,标识出22名和43名.现在的不是啊,您在看看.

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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/8/14 12:50:00 [只看该作者]


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


加好友 发短信
等级:黑侠 帖子:731 积分:4099 威望:0 精华:0 注册:2006/8/29 23:00:00
  发帖心情 Post By:2010/8/14 14:26:00 [只看该作者]

AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")") And EvalFor(Grid,"总分","[总分]+0.01","k"," = ",21,"k"," = ",21,"p","=",-1) And DeleteCol(Grid,"k") And DeleteCol(Grid,"p")这公式还能不能精减些.它有个问题,就是21名如果有多个并列,比如有10个21名并列,在实际中要点10次按扭.能不能再精确些.如果不能,我就用它了.

下面是42名的公式AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")") And EvalFor(Grid,"总分","[总分]+0.01","k"," = ",42,"k"," = ",42,"p","=",-1) And DeleteCol(Grid,"k") And DeleteCol(Grid,"p")

再下面是21和42名的公式AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")") And EvalFor(Grid,"总分","[总分]+0.01","k"," = ",21,"k"," = ",21,"p","=",-1) And DeleteCol(Grid,"k") And DeleteCol(Grid,"p") and AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")&


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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/8/14 16:01:00 [只看该作者]


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


加好友 发短信
等级:黑侠 帖子:731 积分:4099 威望:0 精华:0 注册:2006/8/29 23:00:00
  发帖心情 Post By:2010/8/14 17:57:00 [只看该作者]

AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")") And EvalFor(Grid,"总分","[总分]+0.01","k"," = ",21,"k"," = ",21,"p","=",-1) And DeleteCol(Grid,"k") And DeleteCol(Grid,"p") and AddCol(Grid,"k",1, False ) And AddCol(Grid,"p",3, False ) And SortCol(Grid,"总分",2) And SortCol(Grid,"班级",1) And EvalFor(Grid,"k","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,Cell(Row-1,""k"")+1))") And EvalFor(Grid,"班名次","If(Row=1,1,If(Cell(Row,""班级"") <> Cell(Row-1,""班级""),1,If(Cell(Row,""总分"")=Cell(Row-1,""总分""),Cell(Row-1,""班名次""),[k])))") And EvalFor(Grid,"p","Cell(Row,""班名次"")=Cell(Row-1,""班名次"") Or Cell(Row,""班名次"")=Cell(Row+1,""班名次"")") And EvalFor(Grid,"总分","[总分]+0.01","k"," = ",42,"k"," = ",42,"p","=",-1) And DeleteCol(Grid,"k") And DeleteCol(Grid,"p")
这个公式的效果是我想得到的,35楼的文件,还是有问题,现在就是能不能把上面这个公式精减些,运算速度再快些.

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


加好友 发短信
等级:超级版主 帖子:16190 积分:125850 威望:1 精华:0 注册:2006/8/12 12:29:00
  发帖心情 Post By:2010/8/14 18:50:00 [只看该作者]

弄不懂你的意思,无法帮你。

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


加好友 发短信
等级:黑侠 帖子:731 积分:4099 威望:0 精华:0 注册:2006/8/29 23:00:00
  发帖心情 Post By:2010/8/14 19:39:00 [只看该作者]

谢谢了,答案已经基本解决了

 回到顶部
总数 38 上一页 1 2 3 4