在Excel日常的基本操作中,最常用的几个Excel基本操作里,其中就有一个是Excel的排序功能。通过排序,可以根据某特定列的内容来重排数据清单中的行。例如,假设一包含销售数据的数据清单有销售员、单位数量和订单日期等列。我们可以用“排序”命令按销售员重排数据清单、从高到低组织单位数量或从早到晚排好订单日期。 当选择“排序”命令后,Microsoft Excel 会利用该列和我们指定的排序次序,或利用自定义排序次序来重新排列行、列或单个的单元格。除非另有指定,否则Microsoft Excel 会根据我们选择的“主要关键字”列的内容以升序顺序(最低到最高)对行作排序。当对数据排序时, Microsoft Excel会遵循以下的原则: 如果我们由某一列来作排序,那么在该列上有完全相同项的行将保持它们的原始次序。 在排序列中有空白单元格的行会被放置在排序的数据清单的最后。 隐藏行不会被移动,除非它们是分级显示的一部分。 排序选项如选定的列、顺序 (递增或递减)和方向(从上到下或从左到右)等,在最后一次排序后便会被保存下来,直到我们修改它们或修改选定区域或列标记为止。 如果我们按一列以上作排序,主要列中有完全相同项的行会根据我们指定的第二列作排序。第二列中有完全相同项的行会根据我们指定的第三列作排序。 提示:排序操作不仅仅适用于数据库,对于我们在工作表中的任意选定范围,我们都可以执行排序操作。
1、RANK函数 RANK函数是Excel计算序数的主要工具,它的语法为:RANK(number,ref,order),其中number为参与计算的数字或含有数字的单元格,ref是对参与计算的数字单元格区域的绝对引用,order是用来说明排序方式的数字(如果order为零或省略,则以降序方式给出结果,反之按升序方式)。 例如要计算E2、E3、E4单元格存放一季度的总产值,计算各车间产值排名的方法是:在F2单元格内输入公式“=RANK(E2,$E$2:$E$4)”,敲回车即可计算出铸造车间的产值排名是2。再将F2中的公式复制到剪贴板,选中F3、F4单元格按Ctrl+V,就能计算出其余两个车间的产值排名为3和1。美文坊提醒大家如果B1单元格中输入的公式为“=RANK(E2,$E$2:$E$4,1)”,则计算出的序数按升序方式排列,即2、1和3。需要注意的是:相同数值用RANK函数计算得到的序数(名次)相同,但会导致后续数字的序数空缺。假如上例中F2单元格存放的数值与F3相同,则按本法计算出的排名分别是3、3和1(降序时)。 2、COUNTIF函数 COUNTIF函数可以统计某一区域中符合条件的单元格数目,它的语法为COUNTIF(range,criteria)。其中range为参与统计的单元格区域,criteria是以数字、表达式或文本形式定义的条件。其中数字可以直接写入,表达式和文本必须加引号。 仍以上面的为例,F2单元格内输入的公式为“=COUNTIF($E$2:$E$4,”>“&E2)+1”。计算各车间产值排名的方法同上,结果也完全相同,2、1和3。 此公式的计算过程是这样的:首先根据E2单元格内的数值,在连接符&的作用下产生一个逻辑表达式,即“>176。7”、“>167。3”等。COUNTIF函数计算出引用区域内符合条件的单元格数量,该结果加一即可得到该数值的名次。很显然,利用上述方法得到的是降序排列的名次,对重复数据计算得到的结果与RANK函数相同。 3、IF函数 Excel自身带有排序功能,可使数据以降序或升序方式重新排列。如果将它与IF函数结合,可以计算出没有空缺的排名。以上例中E2、E3、E4单元格的产值排序为例,具体做法是:选中E2单元格,根据排序需要,单击Excel工具栏中的“降序排序”或“升序排序”按钮,即可使工作表中的所有数据按要求重新排列。 假如数据是按产值由大到小(降序)排列的,而您又想赋予每个车间从1到n(n为自然数)的排名。可以在G2单元格中输入1,然后在G3单元格中输入公式“=IF(E3=E2,G3,G3+1)”,只要将公式复制到G4等单元格,就可以计算出其他车间的产值排名。 |