找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

通达OA官网网站
搜索
查看: 1451|回复: 3

报表中关于求名次的几个问题

[复制链接]

10

主题

4

回帖

52

牛毛

游客

积分
66
发表于 2014-4-15 09:12:32 | 显示全部楼层 |阅读模式
本帖最后由 通达林河水 于 2016-7-30 15:54 编辑 <br /><br />在报表中求名次,如A列是得分,B列是名次,在EXCEL中,一般用RANK(A2,A$2:A$500)来进行降序排序,但是在报表中却出现问题:
1、报表中支持取名次的函数RANK(),但是发现RANK()取得的名次是升序的,第三个参数无论用0还是1,都是升序,与EXCEL的不一样,是否可介绍下RANK()函数的用法。如果用RANK(A2,A$2:A2)生成50条记录,然后导出到EXCEL中研究,发现第一条记录的公式变为:RANK(A51,A$2:A51),第二条记录的公式则变成了:RANK(A3,A$2:A3),结果凌乱了。如果用RANK(A2,A$2:A$501)生成100条记录,因为总记录数是动态的,只有尽可能多地选择,这儿假设500条记录为最多,故设置为A$2:A$501,因为RANK()在OA报表中是升序排序,所以它从500条中减去为空的,然后再开始排序,名次也是乱的,不可使用。
2、报表支持COUNTIF()函数,因此用COUNTIF(A$2:A$500,">"&A2),能正常排序,但是由于每个记录要统计500个数据,报表运行速度很慢。希望能用取数公式,手动执行,但是表达式中不支持求名次,是不是有其他解决办法?

1

主题

1294

回帖

1962

牛毛

游客

积分
3246
QQ
发表于 2014-4-15 10:35:39 | 显示全部楼层
本帖最后由 通达林河水 于 2016-7-30 15:54 编辑 <br /><br />rank(A51,A2:A51,0),第三个参数为0时降序排列,为1时升序排列,默认为升序排列。

10

主题

4

回帖

52

牛毛

游客

积分
66
 楼主| 发表于 2014-4-15 16:56:41 | 显示全部楼层
本帖最后由 通达林河水 于 2016-7-30 15:54 编辑 <br /><br />请问第一条记录应该怎么填呢?还是要加$?

1

主题

1294

回帖

1962

牛毛

游客

积分
3246
QQ
发表于 2014-4-15 17:31:35 | 显示全部楼层
本帖最后由 通达林河水 于 2016-7-30 15:54 编辑 <br /><br />$只是绝对定位,看需要吧。
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

咨询电话:400 818 0505 通达OA,国内协同管理软件行业内唯一的央企单位,中国协同OA软件的领跑者,优秀协同办公解决方案供应商

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|由NB5牛论坛提供技术支持NB5用户社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2024-12-24 08:26 , Processed in 0.125294 second(s), 35 queries , Yac On.

Powered by Discuz

Copyright © 2001-2024, 北京通达信科科技有限公司.

快速回复 返回顶部 返回列表