请EXCEL大神帮忙解答一下,关于这样的奖励公式怎么写?

先统计得分的平均数,大于平均数的人奖励200元,小于平均数的根据得分又高到低从200元依次递减30元,小于0元按0处理?... 先统计得分的平均数,大于平均数的人奖励200元,小于平均数的根据得分又高到低从200元依次递减30元,小于0元按0处理? 展开
 我来答
太阳能少年
2020-03-26 · 新思想,新观点,新发现,与您分享!
太阳能少年
采纳数:37 获赞数:149

向TA提问 私信TA
展开全部
针对你的数据,这样编写:
=MAX(IF(B1>AVERAGE($B$1:$B$6),200,200-30*(RANK(B1,$B$1:$B$6,0)-COUNTIF($B$1:$B$6,">"&AVERAGE($B$1:$B$6)))),0)
如果不止这六行数据,把所有的$B$1:$B$6改为B:B即可:
=MAX(IF(B1>AVERAGE(B:B),200,200-30*(RANK(B1,B:B,0)-COUNTIF(B:B,">"&AVERAGE(B:B)))),0)
手打不容易,望采纳!
追问
虽然有些地方不懂,但还是先采纳了,大神我有点晕,您能帮我说明一下这窜函数的是什么意思吗?

IF的条件语句和真值我看懂了,后面的是啥意思,尤其是">"&AVERAGE($B$1:$B$6)这个&是啥意思
200-30*(RANK(B1,$B$1:$B$6,0)-COUNTIF($B$1:$B$6,">"&AVERAGE($B$1:$B$6)))
追答
啊我也不是什么大神啦>o60”之类的,但如果countif要跟average搭配使用的话,这里的写法就要写成“>”&,因为直接按照“>average()”是会报错的,我也不是太清楚为啥要这么写,不过大家好像都是这么写的qaq。
另外,一开始的max函数是对应你最后的那条要求,也就是如果减到最后出现小于0的值了,那么跟0比较,选出更大的那个值来,也就实现了比0小的记为0,省去了再写if,算是一个小trick吧
可以分解一下再看看
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式