ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的测验 > 函数与公式 > 确定最高录取分数(结束)

确定最高录取分数(结束)

作者:绿色风 分类: 时间:2022-08-18 浏览:114
楼主
Zaezhong
题目说明:
1、A列为岗位,B列为应聘者姓名,C列为应聘分数,C列的数据是随机的
2、F列为每一个岗位的录取比例,可以超过,但最多多录取一人,岗位D应聘8人,录取50%,刚好录取4人,其余参考下面红色部分
PS.已经跟帖的答案无需修改在评分的时候按照正确答案对待
不清楚的可以短信息联系,下图情况最大录取分数为26.84

要求:
得出录取的最高界限分数(该分数为5个岗位录取分数的最大值)
如A岗位:应聘的总共有6人,录取60%就是3.6人,这样可以录取4个,那么得出第四大的成绩作为录取成绩,其他类似,最后是这5个岗位的录取成绩中取最大值

得分:
为鼓励大家参与,如果利用G列做辅组列的正确答案奖1技能分
不使用辅组列的正确答案奖励5技能分
要求公式在2003下通过,截止时间本月底


 

汇总在14楼~~
最高录取分数.rar
2楼
wcymiss
  1. =MAX(LARGE(IF(A$2:A$35=TRANSPOSE(E2:E6),C$2:C$35,9)*10^{1,2,3,4,5},F2:F6*COUNTIF(A$2:A$35,E2:E6)+34*{4;3;2;1;0})/10^ROW(1:5))
3楼
sharprain
最高录取分数.rar
4楼
bluexuemei
  1. =MAX(mod(LARGE(N(TRANSPOSE(A2:A35)=E2:E6)*TRANSPOSE(C2:C35)+(5-ROW(1:5))*100,INT(COUNTIF(A2:A35,E2:E6)*F2:F6)+(ROW(1:5)-1)*34),100))
数组公式
5楼
fangjianp
公式长度:143
(用ROW()+数据方法)
  1. =MAX(MOD(LARGE((A2:A35=TRANSPOSE(E2:E6))*C2:C35+COLUMN(A:E)/1%,ROUND(MMULT(N(TRANSPOSE(A2:A35)=E2:E6),ROW(1:34)^0)*F2:F6,)+34*{4;3;2;1;0}),100))
简化,公式长度119

  1. =MAX(MOD(LARGE((A2:A35=TRANSPOSE(E2:E6))*C2:C35+COLUMN(A:E)/1%,ROUND(COUNTIF(A2:A35,E2:E6)*F2:F6,)+34*{4;3;2;1;0}),100))

就这一题而言,公式可以更短些,长度:115

  1. =MAX(MOD(LARGE((A2:A35=TRANSPOSE(E2:E6))*C2:C35+COLUMN(A:E)/1%,COUNTIF(A2:A35,E2:E6)*F2:F6+34*{4;3;2;1;0}-0.5),100))


一般情况,长度:117(应无误)

  1. =MAX(MOD(LARGE((A2:A35=TRANSPOSE(E2:E6))*C2:C35+COLUMN(A:E)/1%,COUNTIF(A2:A35,E2:E6)*F2:F6+34*{4;3;2;1;0}-0.499),100))
6楼
wangg913
是排名啊,不知对不对?




  1. =MAX(MOD(LARGE(C2:C35-CODE(A2:A35)/1%,MMULT(N(ROW(2:6)>COLUMN(A:E)),COUNTIF(A:A,E1:E5))-1+COUNTIF(A:A,E2:E6)*F2:F6),100))
7楼
Violet_Universe
  1. =MAX(SMALL(IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,9E+307)+COLUMN(A:E)*100,INT(COUNTIF($A$2:$A$35,E2:E6)*F2:F6)+MMULT(N(ROW(1:5)>=COLUMN(A:E)),COUNTIF($A$2:$A$35,E1:E5)))-ROW(1:5)*100)
如果答案不是这个,我会提出质疑(上面这个为我的答案)
如果答案是下面这个结果,我会更质疑
  1. =MAX(SMALL(IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,9E+307)+COLUMN(A:E)*100,ROUND(COUNTIF($A$2:$A$35,E2:E6)*F2:F6,0)+MMULT(N(ROW(1:5)>=COLUMN(A:E)),COUNTIF($A$2:$A$35,E1:E5)))-ROW(1:5)*100)
如果公式里面有PERCENTILE参与的,我也更会质疑呵呵
如果用辅助列的话,我的G2公式为
  1. =SMALL(IF($A$2:$A$35=E2,$C$2:$C$35,""),INT(COUNTIF($A$2:$A$35,E2)*F2))

那么得最高分的公式为
  1. =MAX(G2:G6)
8楼
liuguansky
G2
  1. =LARGE(C$2:C$35*(A$2:A$35=E2),INT(COUNTIF(A:A,E2)*F2))
下拉
G7
  1. =MAX(G2:G6)
G10
  1. =ROUND(MAX(MOD(SMALL((A2:A35=TRANSPOSE(E2:E6))*C2:C35+10^(COLUMN(A:E)+2),34*COLUMN(A:E)+1-TRANSPOSE(INT(COUNTIF(A:A,E2:E6)*F2:F6))),10^(COLUMN(A:E)+2))),2)
9楼
rongjun
数组公式
  1. =MAX(MOD(LARGE((A2:A35=TRANSPOSE(E2:E6))*C2:C35+{1,2,3,4,5}*100,COUNTIF(A:A,E2:E6)*F2:F6+34*{4;3;2;1;0}),100))
10楼
Violet_Universe
Z版我直接答题了哦,上面原来的不动,做个纪念,下次题目反过来刚好呵呵

新代码如下:
  1. =MAX(LARGE(IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,0)*10^COLUMN(A:E),ROUND(COUNTIF($A$2:$A$35,E2:E6)*F2:F6,)+MMULT(TRANSPOSE(N(ROW(1:5)>=COLUMN(A:E))),COUNTIF($A$2:$A$35,E3:E7)))/10^ROW(1:5))
11楼
Violet_Universe
再来一种大同小异的
  1. =MAX(LARGE(IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,-500)+COLUMN(A:E)*99,ROUND(COUNTIF($A$2:$A$35,E2:E6)*F2:F6,)+MMULT(TRANSPOSE(N(ROW(1:5)>=COLUMN(A:E))),COUNTIF($A$2:$A$35,E3:E7)))-ROW(1:5)*99)
12楼
Violet_Universe
再来一个我以前用的SMALL做的
  1. =-MIN(SMALL(-IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,-9E+307)-(6-COLUMN(A:E))*100,ROUND(COUNTIF($A$2:$A$35,E2:E6)*F2:F6,0)+MMULT(N(ROW(1:5)>=COLUMN(A:E)),COUNTIF($A$2:$A$35,E1:E5)))+(6-ROW(1:5))*100)

或者
  1. =MAX(-(SMALL(-IF($A$2:$A$35=TRANSPOSE($E$2:$E$6),$C$2:$C$35,-9E+307)-(6-COLUMN(A:E))*100,ROUND(COUNTIF($A$2:$A$35,E2:E6)*F2:F6,0)+MMULT(N(ROW(1:5)>=COLUMN(A:E)),COUNTIF($A$2:$A$35,E1:E5)))+(6-ROW(1:5))*100))

两个意思完全一下,弄了玩呵呵
13楼
落雪绽菊
只会辅助列
最高录取分数_交卷.rar
14楼
Zaezhong
此题在做法上比较简单,主要是生成的内存数组中判断每一列的最值,其中荣版的答案最简单,其他的人多多少少都出现了一点弯路。
公式中的(A2:A35=TRANSPOSE(E2:E6))*C2:C35+{1,2,3,4,5}*100部分将各个岗位的成绩分别在5列中表示出来。生成的内存数组中每一行都只有一个数不为0,这个数的位置就对应岗位的名称,如果是第一个不为0那么岗位是A,第二个不为0,那么岗位是B,依次类推……后面的{1,2,3,4,5}*100将第一列的数据加100,第二列的数据加200……,这样就实现了第一列的最大值比第二列的最小值要小,其余也是类似,后面的large第二参数也是这样。

此题在开始的时候目的是要做出情况一的结果,如果录取3.6人就只录取3人,这样的情况自己也没有考虑到,原因在我(评分按照正确答案对待),情况一得出结果的人也是没有考虑到这点。原因见下面的截图(large函数并不是我们想象的一样会自动截取小数部分),欢迎大家指正,谢谢~~

 

 
Large&Small.rar
最高录取分数(汇总).rar
15楼
w83365040371
  1. =MAX(MOD(LARGE(IF(A2:A35=TRANSPOSE(E2:E6),C2:C35)+{5,4,3,2,1}/1%%,CEILING(COUNTIF(A2:A35,TRANSPOSE(E2:E6))*TRANSPOSE(F2:F6),1)+34*COLUMN(A:E)-34),10^4))

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap