分享

Excel舍入函数简介

 JT_man 2011-09-19

在计算时,经常需要舍入数字,Excel提供了多个用于舍入或截取数字的函数,如下表所示。
函数名 函数说明
ABS 返回数字的绝对值。=ABS(-12.55)返回12.55。
CEILING 将数字向上舍入为最接近的整数,或最接近的指定基数的培数,两个参数的符号必须相同。=CEILING(1.2555,0.5)返回1.5.
EVEN 将正数向上舍入为最接近的偶数,将负数向下舍入为最接近的偶数。=EVEN(3.25)返回4。
FLOOR 按给定基数向下舍入为最接近的整数,两个参数的符号必须相同。=FLOOR(1.2555,0.5)返回1。
INT 将数字向下舍入为最接近的整数。=INT(-5.6)返回值-6。对于负数,返回比该数小的最接近的整数。
MROUND 将数字舍入为最接近的倍数。=MROUND(6.89,4)返回8。
ODD 将正数向上舍入为最接近的奇数,将负数向下舍入为最接近的奇数。=ODD(4.25)返回5。
ROUND 将数字按四舍五入规则舍入到指定的位数。=ROUND(1.378,1)返回1.4(1位小数);=ROUND(123.56,-1)返回120(最接近10的倍数);=ROUND(123.56,0)返回124(最接近的整数)
ROUNDDOWN 与ROUND相似,但总是向下舍入
ROUNDUP 与ROUND相似,但总是向上舍入
TRUNC 将数字截为整数或保留指定位数的小数。=TRUNC(1.55)返回1;=TRUNC(-5.6)返回-5;INT(x)与TRUNC(x)唯一的不同在于参数为值时。TRUNC(x,n)截取数字为保留n位小数。

示例参考:
roundfunction1

其中,第1行为函数的参数,第4行、第7行、第10行分别输入相应的公式并显示结果。可以修改第1行中的数字,以理解这些函数。
注:我们一般都会将4.3舍入为4,将4.6舍入为5,但4.5呢?大多数人回答是5,使用了四舍五入的规则,但有些人则会使用舍入为偶数的规则,因此4.5舍入为4,就像3.5一样。不巧的是,Excel没有提供遵循这条规则的函数,但可以构造自定义函数来实现此功能。
Excel的舍入函数在很多情况下都非常有用,例如设置价格的小数部分、确保数值为整数,等等。
有效数字(significant number)
一个非常有用的公式是舍入数字为n个有效数字:

=ROUND(A1,A2-1-INT(LOG10(ABS(A1))))

其中,单元格A1中的值为要舍入的数字,单元格A2中的值代表必需的有效位的数量。例如,单元格A1中的值为1.27845,单元格A2中的值为3,那么公式返回的结果为1.28000。注意,显示的0不是有效数字。
如果要舍入的数字为正数,且没有小数位,那么可以使用下面的公式:

=ROUNDDOWN(A1,2-LEN(A1))

将单元格A1中的值舍入为两个有效数字。如果要舍入到其它的有效数字,则将公式中的2替换为相应的数字。
用精确值代替近似值
例如,单元格A1中的计算结果本应该是0或1,但由于Excel数值转换的原因,其中的值可能由于是通过公式计算获得,因而可能接近但不等于0或1,如0.999999998。此时,可以使用下面的公式转换:

=IF((ABS(A1-0.5)-0.5)^2<0.000000001,ROUND(A1,0),9999)

如果单元格A1中的值非常接近1,那么ABS(A1-0.5)必然近似于ABS(1-0.5)或0.5;如果单元格A1中的值非常接近0,那么ABS(A1-0.5)必然近似于ABS(0-0.5)或ABS(-0.5)即0.5。无论哪种情况,都将得到一个约等于0.5的数字。如果这个数字减去0.5,结果将是0.00001或-0.00001这样的数字,将这个数平方,得到0.000000001。若在此范围内,显然可以认为单元格A1的值非常接近于0或1。对A1取整,不保留小数,得到精确的0或1。
 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多