在平时的数据处理中,特别是财务,经常需要对满屏的数据的小数位进行一定的舍入处理。舍入情况很多种,有时可能需要数据的四舍五入,有时可能只舍不入,也有向上舍入或是向下舍入,等等。 怎么对数据进行不同情况的舍入处理? 今天我罗列了几个常用的舍入类函数,分别为:INT函数、TRUNC函数、ROUND函数、ROUNDUP函数、ROUNDDOWN函数、FLOOR函数、CEILING函数。看看这些函数都是怎么处理数据的。 一、INT函数 Int函数是向下取整函数,即将数字向下舍入到最接近的整数,不带有四舍五入。 语法格式:INT(number) 应用实例: 从上图,我们可以看出, 1、int函数对于正数,直接截掉小数取整; 2、int函数对于负数,总是向上进位,即朝远离0的方向的整数取值。 二、TRUNC函数 trunc函数与int函数类似,可以截取整数部分。但trunc函数不同于int函数的是: 1、trunc函数不管是正数,还是负数,都是直接去除数字的小数部分; 2、trunc函数还可以截取保留指定小数位位数的数字。 语法格式:TRUNC(数字,[保留位数]) 第二个参数为可选参数,可写可不写。如果省略不写,则默认为0。 应用实例: 三、ROUND函数 Round函数是用来对数值进行四舍五入的函数。 语法格式:ROUND(数字, 保留小数位数); 第二个参数可大于0,也可小于0,也可等于0; 当第二个参数大于0时,表示把数字四舍五入到指定小数位数; 当第二个参数小于0时,表示把数字四舍五入到小数点左边的相应位数; 当第二个参数等于0时,把数字四舍五入到最接近的整数。 应用实例: 说明:当第二个参数为负数,表示把数字四舍五入到小数点左边的相应位数。上图中的Round(A6,-1),表示将A6中的数字108.281从小数点处往左移一位,即到了十分位,由于个位大于5,因此个位向十分位进一,个位变为0,所以返回110。上图中的ROUND(A8,-1),由于个位小于5,因此直接舍去,个数变为0,所以返回250。 四、ROUNDUP函数 Roundup函数主要用于对一个数字向上舍入,它跟四舍五入不一样,不管舍去的首位数字是否大于4,都向前进1。 语法格式:ROUNDUP(数字,[保留位数]) 第二个参数同样可大于0,也可小于0,也可等于0; 当第二个参数大于0时,则表示将数字向上舍入到指定的小数位; 当第二个参数小于0时,则在小数点左侧向上进行舍入); 当第二个参数等于0时,则将数字向上舍入到最接近的整数。 应用实例: 五、ROUNDDOWN函数 Rounddown函数正好与roundup函数是相反的,是对数字向下舍入的。 语法格式:ROUNDDOWN(数字,[保留位数]); 第二个参数同样可大于0,也可小于0,也可等于0; 当第二个参数大于0时,则将数字向下舍入到指定的小数位数; 当第二个参数小于0时,则将数字向下舍入到小数点左边的相应位数; 当第二个参数等于0时,则将数字向下舍入到最接近的整数 应用实例: 六、FLOOR函数 Floor函数是将数字向下舍入到最接近的整数或最接近的指定基数的倍数。 语法格式:FLOOR(number,significance); 参数number:表示向下舍入的数值; 参数significance:表示舍入的倍数。 应用实例: 从上图中,可以看到: 1、如果number为正,floor函数会向靠近零的方向舍入; 2、如果number为负,floor函数则会向远离零的方向舍入; 3、如果number为正,significance为负,则 FLOOR 将返回错误值 #NUM!; 4、如果number恰好是significance的整数倍,则不进行舍入。 七、CEILING函数 Celling函数正好与floor函数相反,将数值向上舍入(沿绝对值增大的方向)为最接近的指定基数的倍数。 语法格式:CEILING(number, significance) 参数Number,表示要舍入的值; 参数Significance,表示要舍入到的倍数。 应用实例: 总结: 1、如果 number 和 significance 都为负,则对值按远离 0 的方向进行向下舍入。 2、如果 number 为负,significance 为正,则对值按朝向 0 的方向进行向上舍入。 3、如果 number 正好是 significance 的倍数,则不进行舍入。 以上是关于舍入类的7个函数的简单总结。希望对你有用。 |
|