ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 156|回复: 12

[已解决] 请高手帮我计算进步奖

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-5-9 19:04 | 显示全部楼层 |阅读模式
本帖最后由 pax_of 于 2024-5-9 19:08 编辑

先感谢各位大神,我想统计学生进步,按原来排名段进行统计。



需求:
1.该次考试排名对比之前所有考试中最高排名;
2.表2表3自动显示符合进步条件的学生名字及进步名次;
3.该次考试缺考的,不进行对比。

3.jpg

进步奖(源数据表).rar

19.22 KB, 下载次数: 13

TA的精华主题

TA的得分主题

发表于 2024-5-9 20:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 良良 于 2024-5-9 20:47 编辑

A3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!C$3:C$172>=21)*(成绩排名表!C$3:C$172<=40)*(成绩排名表!C$3:C$172-成绩排名表!D$3:D$172>=3),ROW($3:$172)),ROW(A1))),"")
D3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!C$3:C$172>=41)*(成绩排名表!C$3:C$172<=100)*(成绩排名表!C$3:C$172-成绩排名表!D$3:D$172>=5),ROW($3:$172)),ROW(A1))),"")
G3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!C$3:C$172>=101)*(成绩排名表!C$3:C$172-成绩排名表!D$3:D$172>=8),ROW($3:$172)),ROW(A1))),"")
均为三键,下拉。

image.png

评分

2

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-5-9 21:30 | 显示全部楼层
良良 发表于 2024-5-9 20:26
A3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!C$3:C$172>=21)*(成绩排名表!C$3:C$172=3),ROW($3: ...

太感谢了

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-5-9 23:51 | 显示全部楼层
良良 发表于 2024-5-9 20:26
A3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!C$3:C$172>=21)*(成绩排名表!C$3:C$172=3),ROW($3: ...

阿良兄,我们的方案升级了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-5-9 23:52 | 显示全部楼层
(1)、在全级排名21-40名的,第一次考试对比入口成绩进步了3名或3名以上,则获得进步奖;接下来的每次考试,都跟以往最好成绩排名进行对比,如果能够进步2名或2名以上,也能获奖;否则不获奖。

第二次考试怎么判断?

A3=IFERROR(INDEX(成绩排名表!B:B,SMALL(IF((成绩排名表!E$3:E$172>=21)*(成绩排名表!E$3:E$172<=40)*(MIN(成绩排名表!D$3:D$172,成绩排名表!C$3:C$172)-成绩排名表!E$3:E$172>=3),ROW(第二学期期末考进步奖!$3:$172)),ROW(第二学期期末考进步奖!A1))),"")

好像不行呢

TA的精华主题

TA的得分主题

发表于 2024-5-10 07:32 | 显示全部楼层
A3=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名表!A3:A172=y)*(成绩排名表!C3:C172>=21)*(成绩排名表!C3:C172<=40)*(成绩排名表!C3:C172-成绩排名表!D3:D172)>=3)))),1)

D3=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名表!A3:A172=y)*(成绩排名表!C3:C172>=41)*(成绩排名表!C3:C172<=100)*(成绩排名表!C3:C172-成绩排名表!D3:D172)>=5)))),1)
G3=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名表!A3:A172=y)*(成绩排名表!C3:C172>=101)*(成绩排名表!C3:C172<=1000)*(成绩排名表!C3:C172-成绩排名表!D3:D172)>=8)))),1)
image.png

TA的精华主题

TA的得分主题

发表于 2024-5-10 07:49 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-5-10 07:52 | 显示全部楼层
(1)、在全级排名21-40名的,第一次考试对比入口成绩进步了3名或3名以上,则获得进步奖;接下来的每次考试,都跟以往最好成绩排名进行对比,如果能够进步2名或2名以上,也能获奖;否则不获奖。

第二次考试怎么判断?
=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名表!A3:A172=y)*(成绩排名表!E3:E172>=21)*(成绩排名表!E3:E172<=40)*(成绩排名表!E3:E172-BYROW(成绩排名表!C3:D172,LAMBDA(a,MIN(a))))>=2)))),1)

每次考试 修改以上公式数据范围  成绩排名表!E3:E172修改为最后一次考试排名列范围   成绩排名表!C3:D172修改从入口到最后一次考试之前的列数据范围  即可



评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-5-10 10:21 | 显示全部楼层
hugeinfo 发表于 2024-5-10 07:52
=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名 ...

非常感谢,我先套入去试试

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-5-10 11:21 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
hugeinfo 发表于 2024-5-10 07:52
=DROP(REDUCE("", UNIQUE(成绩排名表!A3:A172),LAMBDA(x,y, VSTACK(x,FILTER(成绩排名表!B3:B172,(成绩排名 ...

其实这个公式也可以用在第一次考试,对吗?只要更改进步名次就行了?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-21 01:27 , Processed in 0.047636 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表