在不同区间算不同值的函数?

A1=100,算C1值,C1值就是根据B1的区间范围,由A1减去不同的数
逻辑为:
当B1=0时,那么C1就等于A1
当1>=B1>0时,那么C1就等于A1-2
当2>=B1>1时,那么C1就等于A1-4
当3>=B1>2时,那么C1就等于A1-6
当4>=B1>3时,那么C1就等于A1-8
当5>=B1>4时,那么C1就等于A1-10
当6>=B1>5时,那么C1就等于A1-12
当7>=B1>6时,那么C1就等于A1-14
当8>=B1>7时,那么C1就等于A1-16
当9>=B1>8时,那么C1就等于A1-18
当10>=B1>9时,那么C1就等于A1-20
当B1>10时,那么C1就直接为数字10
当0>B1>-2时,那么C1就等于A1-1
当-2>=B1>-4时,那么C1就等于A1-2
当-4>=B1>-6时,那么C1就等于A1-3
当-6>=B1>-8时,那么C1就等于A1-4
当-8>=B1>-10时,那么C1就等于A1-5
当-10>=B1>-12时,那么C1就等于A1-6
当-12>=B1>-14时,那么C1就等于A1-7
当-14>=B1>-15时,那么C1就等于A1-8
当-15>=B1时,那么那么C1就直接为数字10

我用IF或IFS函数,结果区间在负数时算出来是对的,但正数时基本都是错的。有更好的办法吗

第1个回答  2023-10-09
这是一个基于Excel的公式问题,我们可以使用IF函数来解决。根据你的描述,我建议使用以下公式:
`=IF(B1=0,A1,IF(B1<=1,A1-2*(B1-1),IF(B1<=2,A1-4*(B1-2),IF(B1<=3,A1-6*(B1-3),IF(B1<=4,A1-8*(B1-4),IF(B1<=5,A1-10*(B1-5),IF(B1<=6,A1-12*(B1-6),IF(B1<=7,A1-14*(B1-7),IF(B1<=8,A1-16*(B1-8),IF(B1<=9,A1-18*(B1-9),IF(B1<=10,A1-20*(B1-10),A1)))))))))))))`
这个公式的逻辑是:
* 如果B1为0,则C1等于A1
* 如果B1小于等于1,那么C1等于A1减去2乘以(B1减去1)
* 如果B1小于等于2,那么C1等于A1减去4乘以(B1减去2)
* ...
* 如果B1小于等于正数最大值(这里是9),那么C1等于A1减去对应的数(例如,当B1为9时,C1等于A1减去18)。
* 如果B1大于正数最大值(这里是9),那么C1等于A1。
这个公式应该能满足你的需求,你可以将它应用到你的Excel表格中。追问

你的公式算出来会有小数啊?无论B值是0.1还是0.9还是0.456,他都在0和1区间,所以只要在这个区间的都是扣2分,即100-2,结果是98分。