在Excel中舍入不同的数字
我需要一个公式,它根据数字是几十,几百,几千,几千,几百万等不同的数字进行舍入。我知道Excel中的基本舍入函数,但不知道如何完全做到这一点。
例子:
1 - 999 need to be rounded up to the nearest 10. 1.000 - 99.999 need to be rounded up to the nearest 100. 100.000 - 999.999 need to be rounded up to the nearest 1.000. 1.000.000 - 999.999.999 need to be rounded up to the nearest 100.000. 1.000.000.000 - 999.999.999.999 need to be rounded up to the nearest 1.000.000
而所有这一切都可以轻易地复制下来。
任何帮助将不胜感激!
也许最好的办法是自定义的VBA函数在值之间切换 – 这会给你最多的控制权,但是你也可以用嵌套的IF()
语句来实现:
=IF(A1<1000,CEILING(A1,10),IF(A1<100000,CEILING(A1,100),IF(A1<1000000,CEILING(A1,1000),IF(A1<1000000000,CEILING(A1,100000),CEILING(A1,1000000)))))
希望帮助!
你可以使用ROUNDUP
函数和一个嵌套的LOOKUP
函数来为你提供你所需要的逻辑,也就是说,在A2中使用下面的公式,
=ROUNDUP(A2,LOOKUP(A2,10^{0,3,5,6,9},-{1,2,3,5,6}))
这部分
10^{0,3,5,6,9}
定义每个范围的下限。 而这部分:
-{1,2,3,5,6}
给出要舍入的位数,例如-2给出下一个100,-3下一个1000等
这个取整到100的最接近的倍数等等,所以134将四舍五入到140.如果你想四舍五入到最接近的倍数,那么你可以使用完全相同的公式,但用ROUND
代替ROUNDUP