宝哥软件园

功能圈也裁员吗?我们害怕告别中频功能!

编辑:宝哥软件园 来源:互联网 时间:2021-09-17

1:如下图所示,当实际销量大于销量目标时,奖励1000元。

一般遇到这样的问题,首先想到的是IF函数,公式是=IF(C2B2,1000,0)。

这个公式大家都能理解,问题也相当简单,简单到甚至不用函数就能求解:

在公式“=(C2B2)*1000”中,用逻辑值直接参与计算,当C2B2成立时,则为TRUE,否则为FALSE。用数字计算逻辑值时,TRUE等于1,FALSE等于0,所以公式“=(C2B2)*1000”也可以得到想要的结果。问题二:还是计算奖励的问题。这一次,奖励规则有所调整。实际销量大于目标销量时,每销量奖励50元,封顶1000元。此时,如果使用IF函数,则公式变为“=if (c2b2,0,if ((C2-B2) * 501000,(C2-B2) * 501000)”。

这个公式已经判断过两次了。首先判断是否符合奖励标准,即C2。

B2,没有奖励;如果达到奖励标准,需要进一步判断奖励是否达到了1000元,即(C2-B2)* 50.1万;少于1000的按实际奖励计算,超过的仍按1000计算。在这道题中,善用IF需要一点技巧,公式显然比第一道题复杂得多。这时,IF函数的新对手出现了,一下子来了两个:=MIN(MAX)((C2-B2)* 50,0),1000。

MIN函数用来得到几个数字中最小的一个,MAX函数用来得到几个数字中最大的一个。这两个功能合作过一次,甚至轻松解决了一个本该是IF功能的工作。这个公式需要分两部分来理解。首先,MAX((C2-B2)*50,0)得到理论奖励和0中较大的一个。如果奖励标准不够,(C2-B2)*50为负数,大的为0;否则,就是超额销售* 50;接下来,把MAX得到的结果和1000放在一起,用MIN函数得到较小的一个。如果奖励金额超过1000,将返还1000。这样就可以简化复杂的中频公式。问题三:根据超额数量计算阶梯奖励,规则如图。

如果你还想用IF来解决这个问题,可以自己试试。真的太长了。下面是一些不带IF的公式供大家参考:公式1:=min(max(int((C2-B2)/101)* 300,1000)。

这完全是一个数学概念。按照阶梯奖励的规则,每个档位300元,1000元封顶,所以超出的数量除以10再加1,再乘以300,就是奖励金额:

但是会有负数和1000以上,所以结合MAX和MIN和问题2的思路就可以得到最终的结果。等式2:=最小值(最大值(上限(C2-B2 1,10) * 30,1000)。

这个公式可以看作是公式1的修正,也可以利用奖励规则中的一些规律性,用天花板(C2-B2 1,10)*30代替INT((C2-B2)/10 1)*300。天花板函数将一个数向上舍入到指定的倍数。请看下面的例子。

公式3:=查找(C2-B2,$ f $2: $ h $6)。

公式3充分利用LOOKUP可以进行区间匹配的功能。需要注意的是,这个例子中使用了一个辅助区域,对于初学者来说非常有用。请注意辅助区第一列的下限值。如果不想使用辅助区域,可以按f9将公式中的区域改为数组:=LOOKUP(C2-B2,{-999,0;0,300;10,600;20,900;30,1000})

如果奖励标准发生变化,可以自行修改数组中的数据。结论:在上述情况下,用逻辑值、MIN、MAX、INT、天花板、LOOKUP等函数代替IF,但实际上有一些函数可以代替IF,如CHOOSE、TEXT等。所以我们就不一一列举了。

当问题的判断条件基于数字时,IF往往不是唯一的选择方式。通过改变我们的思维,我们可能会得到更多的方法。但是,IF函数确实有自己的优势。对于一些非数字的判断,是不可或缺的。

更多资讯
游戏推荐
更多+