chrome手机版插件2017:请教excel的自动排名

来源:百度文库 编辑:中科新闻网 时间:2024/05/15 10:04:19
笔者认为无论对原数据清单进行排序或筛选最好不要破坏原清单的原貌。EXCEL的函数十分丰富,不用宏,用函数也能解决数值自动排名。方法如下。 如第一行为表头,A列(例如A2:A101,下同)为姓名,B列数据,在C2单元格输入公式“=IF(A2=0,0,INT(CONCATENATE(b2*10,200-ROW(A1))))”。公式中ROW(A1)为A1单元格所在的行数即为1,(该公式下拉时依次为2、3、4.....),用200来减是为了CONCATENATE函数中的第2个参数保持3位数,CONCATENATE函数是一个拼合函数这里把B列的数据和它所在的行数拼合成一个数据。这样在对它进行排序后该数据包含了它所在行数的信息。CONCATENATE函数INT函数套用是为了把原来的文本变为数字。 在D2单元格输入公式“=LARGE(C:C,ROW(A1))”即对B列数值(包含所在行的信息)按大小排列。 在F2单元格(为了与原始清单分开中间空了一列)输入公式“=IF(D2=0,0,200-RIGHT(D2,3))”,函数 RIGHT(D2,3)即为D2单元格数据的后3位数,用200来减即为此数据所在的行数。 在G2单元格输入公式“=IF($F2=0,0,INDEX($A$2:$B$15,$F2,COLUMN(A1)))”,并拖到H2单元格。INDEX函数为引用函数,即根据F2单元格所标明的行数在$A$2:$B$15单元格矩阵中引用姓名及得分。 在I2单元格输入公式“=IF(H2=0,0,IF(H2=H1,I1,ROW(A1)))”,本来G、H列就是按得分大小排列的,但可能有平列名次,所以选用上述公式。 最后把C2到I2单元格的公式下拉,程序就完成了。
问题是,我现在想在最前面增加一列做说明,在最上面增加一行做标题,可是增加后公式就不对了,该怎么改?
再有,我是想将其应用在运动会上的成绩统计。
我想在最后增加一栏,对应名次,第一名加5分,第二名加4分,依次类推,有办法自动解决吗?
然后将这些加分按照其所对应的班级统计累加。
能解决吗?希望高手指点,谢谢!
呵呵,谢谢您的指点。
这个办法只能对数据简单的排名,不能达到我希望的效果。

excel中成绩录入后,excel自动把排名抽取到某区域内:

假如总分在J列,数据区域为J2:J60,名次在K列。

在K2单元格中编辑公式
=RANK(J2,$J$2:$J$60,0)
回车确认后,用填充柄向下复制公式到K60即可。

注意:
函数意义及具体使用可见函数帮助。
一般情况下,名次排列紧随总分之后,不必另外引用到新的工作中,如果要引用,只要在单元格(区域)前面加上工作表名称即可。

试试,希望能帮上你!