在I3中输入或复制粘贴下列公式
=RANK(H3,H$3:H$32) 降序排序
=RANK(H3,H$3:H$32,1) 升序排序
下拉填充
或用中国式排名公式
=SUMPRODUCT((H3<H$3:H$32)/COUNTIF(H$3:H$32,H$3:H$32))+1
=SUMPRODUCT((H3>H$3:H$32)/COUNTIF(H$3:H$32,H$3:H$32))+1
你的公式设置有问题,你设置的公式表述的逻辑是:E列的各个数据在F列中的排名,E列的数在F列中没有的,结果当然显示#N/A(比如E3的数字是2,但F列没有这个数字,所以G2显示#N/A)。再者,公式最后一个参数你填了1,代表从小到大排序(比如E2的数字是1,在F列是最小的,所以G2显示1)。我估计你想要的是F列的各项数据在F列中的排名,公式应该这样设置:
从大到小排序:=RANK(F2,F$2:F$13,0)或者=RANK(F2,F$2:F$13)
从小到大排序:=RANK(F2,F$2:F$13,1)
我试了,楼主的输入没有错,这觉得,这是EXCLE的一个小BUG,楼上的几位提到用ROUND是可行的,可以把ROUND的精度取得大一些,几百位,几千位的精度都可以。例把=SUM(C1:E1)变为=ROUND(SUM(C1:E1),100)
rank(number,ref,order)
number
为需要找到排位的数字。
ref
为数字列表数组或对数字列表的引用。ref
中的非数值型参数将被忽略。
order
为一数字,指明排位的方式。
如果
order
为
0(零)或省略,microsoft
excel
对数字的排位是基于
ref
为按照降序排列的列表。
如果
order
不为零,microsoft
excel
对数字的排位是基于
ref
为按照升序排列的列表。
你把order参数改成1就行了,不写默认为0
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)