我正在尝试创建一个公式,其中将数字范围内的不同值乘以不同的乘数。例如,数字 50:将值 1-10 乘以 100,将值 11-20 乘以 50,将 21 以上的值乘以 20,然后将其全部相加。
对于数字 50,结果将是:
((10 x 100) + (10 x 50) + (40 x 20)) = 2300
如果数字是 25,则结果将是:
((10 x 100) + (10 x 50) + (5 x 20)) = 1600
如果数字是 13,则结果将是:
((10 x 100) + (3 x 50)) = 1150
如果数字为 8,则结果为:
8 x 100 = 800
答案1
可能有更漂亮的方法可以做到这一点,但这里是其中一种:
=IF(A1>=10,1000,A1*100)+IF(A1>=20,500,MAX(0,A1-10)*50)+MAX(0,A1-20)*20
它实际上是 3 个不同的位相加。
IF(A1>=10,1000,A1*100)
IF(A1>=20,500,MAX(0,A1-10)*50)
MAX(0,A1-20)*20
如果您不需要手动设置单元格引用(而不是设置一次然后复制/粘贴)并且您拥有较新版本的 Excel,则可以使用该LET()
功能更轻松地手动更改单元格引用:
=LET(val,A1,IF(val>=10,1000,val*100)+IF(val>=20,500,MAX(0,val-10)*50)+MAX(0,val-20)*20)
仅供参考:您的示例中 50 有误。应为:
((10 x 100) + (10 x 50) + (三十x 20))=2100