+ -
当前位置:首页 → 问答吧 → 如何用if嵌套函数写下面的内容,帮帮忙

如何用if嵌套函数写下面的内容,帮帮忙

时间:2011-08-02

来源:互联网

例:分数>=130,结果为600元
       100<分数<130,以100为基础,每增加1结果奖励20元
    分数=100,结果为0
      80<分数<100,,以100为基础,每减少1结果处罚20元
   分数<=8,结果为-300

请问如何用IF函数写出上面这个内容,算出结果?
谢谢啦

作者: jackieqiqi   发布时间: 2011-08-02

=IF(X>=130,600,IF(X>100,(X-100)*20,IF(X=100,0,IF(X>80,(X-100)*20,-300))))

   这里的 X  是你的数值

简化一下:
=IF(X>=130,600,IF(X>=100,(X-100)*20,IF(X>80,(X-100)*20,-300)))

再简一下:
=IF(X>=130,600,IF(X>80,(X-100)*20,-300))

   我刚看了,4 楼的, 才发现楼主出题有问题.  因为了81 时  差值为 19 , 要是乘以20 ,就是380 ,远远大于下限的确-300 值了,  所以,我的公式仅以楼主给出的条件写,所以错了    , 应参考4 楼老师的

[ 本帖最后由 正弋老兵 于 2011-8-2 20:05 编辑 ]

作者: 正弋老兵   发布时间: 2011-08-02

分数<=8还是分数<=80?

暂按分数<=80做了一个公式,抛砖引玉等高手
无附件 假设数据在b列   a1=IF(B1>=130,600,IF((AND(B1>=80,B1<130)),(B1-100)*20,-300))下拉

[ 本帖最后由 祝洪忠 于 2011-8-2 19:33 编辑 ]

作者: 祝洪忠   发布时间: 2011-08-02

没附件,无法模拟。实际上,你写了大串条件,可以简化。=min(max((a1-100)*20,-300),600)A1就是分数单无格。下拉。你试试如何。

作者: swyrlbq   发布时间: 2011-08-02

我刚看了,4 楼的, 才发现楼主出题有问题.  因为了81 时 差值为 19 , 要是乘以20 ,就是380 ,远远大于下限的确-300 值了,  所以,我的公式仅以楼主给出的条件写,所以错了    , 应参考4 楼老师的

作者: 正弋老兵   发布时间: 2011-08-02