如果Excel能有这个功能,中文排名就很简单了!
根据学生考试成绩计算排名,直接使用Excel内置函数RANK,结果如下:
有两个同学并列第四,但是后来直奔第六,第五就没了。这不符合我们的习惯。从小到大,每次考试后并列第一是常事,但不会缺一个中间名。
如何解决以上问题?
上过我的函数培训班的同学写这个公式应该没问题:= sum product(($ b $ 2:$ b $ 20 >;= b2)/(COUNTIF ($ b $2: $ b $20,$ b $2: $ b $20))知道数组的基础,知道它的套路就不难理解这个公式了。
如果你知道VBA,写一个自定义函数,你可以稍后再做:
或者复制下面的代码,保存为外接程序,需要的时候加载,不需要的时候取消,也很优秀。
代码如下:
‘Rng1表示待排序的单元格,rng2表示排序区域函数crank (rng1asrange,rng2asrange) dimarr,brr(),crr(),m & amp;arr = RNG 2m = UBound(arr)ReDim brr(1到m),crr(1到m) For i = 1到m brr(i) = Application。CountIf(rng2,arr(i,1)) Next For i = 1 To m If rng1。价值& lt= arr(i,1)那么crr(i) = 1 / brr(i)否则crr(i) = 0结束如果下一个曲柄=应用。求和(crr)结束函数
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。