桓楠百科网

编程知识、经典语录与百科知识分享平台

找出前几名的学生名单,用LARGE未必是好办法

今天就跟大家探讨一个问题,找出总分排名前三名的学生名单。

做成绩统计的老师都知道,找出总分前几名或后几名的学生,是最常见的操作,如下表所示,是整个街道的学生成绩。

在EXCEL中,可以用LARGE取前几名的学生名单,也可以用SMALL取后几名的学生名单。

下面先了解下这两个函数的使用,看看它能否可以满足需求。

【学习内容】

1、LARGE函数的语法与功能;

2、SMALL函数的语法与功能;

3、LARGE与SMALL函数在实际工作中的应用实例;

【学习目标】

1、掌握和理解LARGE函数的语法与功能;

2、掌握和理解SMALL函数的语法与功能;

3、会在实际工作中灵活使用函数组合解决问题。

【学习过程】

1、LARGE函数

(1)功能

用于返回某一数据集中的某个最大值。

(2)语法

LARGE(array,k)

(3)参数解释

array:指需要从中查询第k个最大值的数组或数据区域。 

k:指返回值在数组或数据单元格区域里的位置,即名次。

2、SMALL函数

(1)功能

用于返回某一数据集中的某个最小值。

(2)语法

SMALL(array,k)

(3)参数解释

array:指需要从中查询第k个最小值的数组或数据区域。 

k:指返回值在数组或数据单元格区域里的位置,即名次。

3、实例

找出全街道总分前三名的学生名单。

(1)问题分析:

要解决这一问题,在EXCEL中,有下面几种方法。

1)可以直接将总分按高到低进行排序,就可以得到前三的学生名单。

2)使用LARGE函数,从总分中提取前三名学生名单;

3)用数据透视表中“筛选”功能。

排序就不在本节课中介绍了,毕竟这个操作简单,大家都容易学会。问题的是表格数据在不能通过排序的情况下,怎样将前三名找出来。

(2)用LARGE函数

1)选中I3单元格,输入公式:

=LARGE($F:$F,$H3)

按回车,可以找到第一名的总分。往下填充公式,就可找出前10个学生的总分。

$F:$F是总分所在的列;

$H3是排名前三名中的序号。

得到的表格如下表所示:

可以看到,前三名的学生,有两个是重分了的,这也是笔者为什么要将排名序号设置到10名的原因。

2)将学生姓名找出来,选中J3单元格,输入公式:

=INDEX($E:$E,MATCH(LARGE($F:$F,$H3),$F:$F,))

看起来挺复杂的,下面解释一下这个公式。

按回车,就可以得到第一名的学生名单,往下填充公式,就可以找到其它名次的学生姓名了,如下表所示。

用这样的公式,如果不重分,是没有问题的,但是现实就是,重分的学生肯定是存在的,所以用这个公式,并不能完美解决问题。

(3)用数据透视表的筛选功能

1)选中左边的成绩表中的任意单元格,单击菜单栏中的【插入】-【数据透视表】,在弹出的“创建数据透视表”中单击【确定】

2)得到一个带有“数据透视表”的表格。

3)在右边的【数据透视表字段】中,将姓名拖入到下面的“行”区域,将总分拖放到下面的“值”区域。得到左边的透视表格如下表所示:

4)右击任一学生姓名单元格,在弹出的菜单中选择“筛选”-“前10个”,弹出如下图所示的对话框。

将“10”改为“3”,单击【确定】,则可以筛选出如下的数据表格。

从中,可以看到,虽然总分相同,但学生的名单已经找出来了。

(4)综上操作,可以发现,找出前几名的学生名单,用数据透视表是最方便的了,而且是不用写公式。

(5)SMALL函数的使用跟LARGE的用法类似,是找出指定排名的最小数值,在这里就不再举例说明了。

【小结】

本节课介绍了LARGE和SMALL函数,并由此对工作中常用的操作进行了举例说明,探讨了几种解决查找前后几名学生的问题方法,毕竟学习知识就是为了解决问题,不一定是非要用哪一种模式,其实是只要能又快又好地解决问题,就是最好的学习效果了。本节课接触了数据透视表的用法,在后面,IT微课程会有专门的课时对数据透视表的应用与局限进行讲解,欢迎大家继续关注。

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言