没有见你的明细表,设计了一个思路:
1、在成绩列表后再加一个姓名,内容复制前列即可(如下图);
2、再设计一统计表,每班前3名,各科成绩前3名,用函数 large(范围, 第1名),large(范围, 第2名),large(范围, 第3名)得到,当成绩取得了,用成绩反找姓名(最后一列姓名),公式 vlookup( 成绩,范围,取值,0 ), 如下图:
希望对你有用,再交流。ok
疏忽了一点,将后三名没有考虑进来,用 函数 small( ),即可解决,方法同上,SMAll(范围,第n个小值)。
统计出来数据是应该放在什么地方,班级的目录又在哪一个列呢?
如上图,现以语文成绩为例,按下面的一步一步操作吧
1、K2单元格输入公式:
=INDEX($A$2:$A$25,MAX(IF(LARGE($D$2:$D$25-ROW($1:$24)%%,ROW(A1))=$D$2:$D$25-ROW($1:$24)%%,ROW($1:$24),0)))
2、L2单元格输入公式:
=INDEX($B$2:$B$25,MAX(IF(LARGE($D$2:$D$25-ROW($1:$24)%%,ROW(A1))=$D$2:$D$25-ROW($1:$24)%%,ROW($1:$24),0)))
3、在M2单元格输入公式:
=INDEX($D$2:$D$25,MAX(IF(LARGE($D$2:$D$25-ROW($1:$24)%%,ROW(A1))=$D$2:$D$25-ROW($1:$24)%%,ROW($1:$24),0)))
4、在K6单元格输入公式:
=INDEX($A$2:$A$25,MIN(IF(SMALL($D$2:$D$25+ROW($1:$24)%%,ROW(A1))=$D$2:$D$25+ROW($1:$24)%%,ROW($1:$24),4^8)))
5、在L6单元格输入公式:
=INDEX($B$2:$B$25,MIN(IF(SMALL($D$2:$D$25+ROW($1:$24)%%,ROW(A1))=$D$2:$D$25+ROW($1:$24)%%,ROW($1:$24),4^8)))
6、在M6单元格输入公式:
=INDEX($D$2:$D$25,MIN(IF(SMALL($D$2:$D$25+ROW($1:$24)%%,ROW(A1))=$D$2:$D$25+ROW($1:$24)%%,ROW($1:$24),4^8)))
以上都是数组公式,在输入或者粘贴公式时必须同时按CTRL+SHIFT+ENTER这3个键结束,否则公式无效……
复制并下拉,即可得到前3和后3的名单了,自己去研究吧……