判断excel中某单元格数值能否被3除尽的方法

来源:百度知道 编辑:UC知道 时间:2024/06/10 14:55:10
小弟要做一个excel的利率定价表,其中需要得出最终的利率是3的倍数,也就是能够被3除尽。比如得出最终利率为10.1552,这个数不能被3除尽,需要在excel中编程,使其能够被3除尽,例如把10.1552加0.0001让其成为10.1553,这样!请问要如何编程?
大侠有何好的方法吗?谢谢

“bluelaser - 总监 八级”给出的公式是:
将A1单元格的值,向上舍入到最接近的0.0003的倍数。
在这个公式中,当余数为0.0001时,向上舍入显然不如向下舍去更贴近A1单元格的值。
比如:A1的数值为7,向上舍入的结果为7.0002,而向下舍去的结果为6.9999

假如楼主需要更贴近的答案,可以采取下面的公式:
=IF(MOD(A1,0.0003)=0,A1,IF(MOD(A1,0.0003)=0.0001,A1-0.0001,A1+0.0001))
公式说明:
1、可以用你说的计算出10.1552结果的公式,来替换上面公式中的A1
这样做,可以直接把计算结果返回到需要的值。
2、如果你要的结果保留位数不是4位,可以更改公式中的0.0003
当然,也要同时把0.0001的位数更改过来。

假设要调整的利率在A列,输入公式:
=CEILING(A1,0.0003)
向下填充即可

假如你全保留的是4位小数,A1为10.1552,在B1中输入如下公式就可以了:
=if(mod(A1*10000,3)=0,A1,A1+(3-mod(A1*10000,3))/10000)
这里的b1中的数全部是能整除0.0003的了,这样行不? 不行的话你再把你的题目说详细点...

=IF((CEILING(A1,B1)-A1)>(A1-FLOOR(A1,B1)),FLOOR(A1,B1),CEILING(A1,B1))

负数的话反过来就是!(">"换"<")
A1=10.1552
B1=0.0003