咔片PPT · AI自动生成演示文稿,模板丰富、排版精美 讯飞智文 · 一键生成PPT和Word,高效应对学习与办公

大家好,欢迎回到IT微课程。

临近期末,小编所在学校,又要我去接单做成绩统计了。

成绩统计总体并不难,难点是要将各班的成绩进行分别统计,用筛选,再将学生的成绩拿出来,或用我之前所说的在数据透视表中各班成绩分别生成数据表,但是这样的方法,都是比较麻烦。

而这节课,就跟大家分享下小编的方法吧。

大家可以先看看效果。

当选择不同的班时,下面表格中的成绩跟着改变。

这涉及到两个方面的知识点。

一是下拉菜单;

二是按条件返回多个结果的公式运用。

【学习内容】

1、下拉菜单的制作;

2、按条件返回多个结果的公式编写。

【学习目标】

1、会制作下拉菜单;

2、理解公式各个部分的含义,能根据需要更改公式。

【学习过程】

1、规划好数据表格

这个实例,分三个数据表。

(1)成绩“总表”,将整个年级的成绩都汇总在这里,并做做年级排名。

(2)班级表,如上表所示。

(3)是“设置”表,用于存放基本的信息。

2、下拉菜单的制作

下拉菜单有两种方法,一是采用控件,二是利用【数据】-【数据验证】方法。本文采用后一种方法。

(1)先在“设置”表里,设置好班级,如下表所示。

(2)转到“班级”表,选中B1单元格。

选择【数据】-【数据验证】-【数据验证】,弹出如下的对话框,选择【设置】。

1)在“允许”中选择序列。

2)在“来源”填写:

=设置!$C$1:$C$21

3)单击“确定”,下拉菜单就做好了。

3、转到“班级”表,在第3行做好标题栏,如下表所示。


=INDEX(成绩总表!B:B,SMALL(IF(成绩总表!$B$2:$B$2000=$B$1,ROW(成绩总表!$A$2:$A$2000),4^8),ROW(成绩总表!B1)))&""

这是数组公式,按Ctrl+Shift+Enter组合键,就可以得到与B1单元格的值对应的班级了。

往右边拖拉填充公式,往下边拖拉填充公式,就可以得到如下的数据表了。

(2)公式解释

=INDEX(成绩总表!B:B,SMALL(IF(成绩总表!$B$2:$B$2000=$B$1,ROW(成绩总表!$A$2:$A$2000),4^8),ROW(成绩总表!B1)))&""

可以看到,一对多的查询公式,共用到INDEX+SMALL+ROW三个函数,一个IF判断语句。

1)SMALL(IF(成绩总表!$B$2:$B$2000=$B$1,ROW(成绩总表!$A$2:$A$2000),4^8)

是指从成绩总表的B列查找其值等于B1值的行。

2)ROW(成绩总表!$A$2:$A$2000),4^8)

表示往下查询,直到没有符合条件的值。

3)4^8是指一个表格中的最大行数,其值是65536,当然,在其它版本,其值更大,但小编想,这65536行已足够了。

4)ROW(成绩总表!B1):从成绩总表的B1单元格开始查找。

5)INDEX函数,返回表或区域中的值或对值的引用。

其格式为INDEX(数据区域,行号,列号),具体可以看小编之前写的INDEX与MATCH函数文章。

【小结】

利用这个一对多的查询公式,可以很方便地进行成绩统计,如果是在企业,也可以利用这个公式组合来处理多部门的数据问题。

再来小结下本课所学的内容吧。

1、先要规划好三个表,一个是信息设置,另一个是总表,还有一个是用于显示各班的表。

2、利用数据-数据验证,可做下拉菜单;

3、利于如下的公式,实现一对多的信息查询。

INDEX(结果列,SMALL(IF(条件,ROW(条件列),4^8),ROW(A1)))&""

不用数据透视表,实现多个表格信息的切换,是不是很方便呢?

本课分享就到这了,欢迎关注IT微课程,一起学习EXCEL。