OFFICE学习资料 | OFFICE资源下载 | OFFICE知识问答      
设为首页
加入收藏
联系站长
  当前位置:Office学院 >> Excel >> Excel函数与公式 >> 正文
用Excel函数自动排名次
[2006年10月26日]  点击数: 【字体: 】【双击滚屏
 
    笔者认为无论对原数据清单进行排序或筛选最好不要破坏原清单的原貌。EXCEL的函数十分丰富,不用宏,用函数也能解决数值自动排名。方法如下。
    如第一行为表头,A列(例如A2:A101,下同)为姓名,B列数据,在C2单元格输入公式“=IF(A2=0,0,INT(CONCATENATE(INT(B2),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单元格的公式下拉,程序就完成了。

   


我要提问
上一篇:Excel中工作日的相关计算
下一篇:用Excel函数排序与筛选
最新文章
Excel中一些常见公式的错误提示12/06
Excel如何计算表达式10/27
Excel 2000如何避免错误信息10/27
Excel 2000自定义函数10/27
Excel 2000条件显示10/27
Excel函数应用教程:函数与公式的概念10/27
Excel函数应用教程:函数的参数10/27
Excel函数应用教程:函数的输入方法10/27
热门文章
相关文章
从菜鸟成为Excel高手 之 IS函数
从菜鸟成为Excel高手 之 If函数
在Word 2003中实现“自动求和”
Word表格也可自动填充
Excel中用VBA宏自动统计成绩
巧用excel为学生考试成绩排名
PPT课件自动“瘦身”的妙招
Excel“自动求和”批处理功能
office知识问答 | office资源下载
备案许可证号: 津ICP备06003561号
版权所有:Office学院 www.officeXY.com
OFFICE学院致力于成就华人社区最受欢迎的office办公软件学习园地;为大家提供word、excel、access、FrontPage、PowerPoint等Office各个系列产品的最全的教程、用法、技巧、方案;并竭力打造最方便的问题解答系统