比VLOOKUP还好用,省时一整天,你却连它们的名字都不知道…【Excel教程】

回复[目录]学习113篇Excel教程

全套Excel视频教程,微信扫码观看

编按:

哈喽,大家好!说到excel中关于数值取舍的方法,可能很多小伙伴都不怎么在意,总觉得不就是对数值进行四舍五入或者是取整吗,用处又不大,有什么好讲的。nonono!数值的取舍远远不止这些,并且它们在工作中用处可大了,比如计算工龄,用于货币单位的转化等等,今天我们就一起来好好认识认识它们吧!

当计算结果为小数时,我们通常会对其小数位进行取舍,以得到符合我们要求的数据。对于数值的取舍,不仅有数学中的四舍五入法,还有向上、向下、截尾的方式取舍数据,下面小编就来逐一介绍下。

1

舍入到最接近基数的整数倍

1.向上舍入到最接近基数的整数倍

我们需要将某些数据小数点后的数值舍入到某一指定数值的倍数,这时候就可以使用CEILING()函数来实现。CEILING是天花板、最高限度的意思。CEILING函数的语法格式为:CEILING(number,significance)。

从函数的语法格式上可以看出,CEILING()包含两个必选参数number和significance。参数number表示要对其进行取舍的原数值,参数significance表示需要进行舍入的倍数,即舍入基数。CEILING()函数将返回大于且最接近number的significance的倍数。

CEILING函数中的两个参数必须是数值型数据,否则函数将返回错误值#VALUE!。在对number进行取舍时,如果number和significance都为负,则对number按远离0的方向进行向下舍入,如果number为负,significance为正,则对number按朝向0的方向进行向上舍入,如果number已经是significance的倍数,则不进行舍入。

温馨提示:加入下面QQ群:1003077796,下载教程配套的课件练习操作。

举个例子,在下方表格的C列调用CEILING()函数,A列为指定的数值(number),B列为舍入基数(significance)。可以看出A2单元格值11.3经过运算后的结果是15。下面我们根据CEILING函数的作用来解析一下计算过程:比11.3大(向上舍入)且必须是5的倍数,12、13、14都不是5的倍数,而最接近11.3的5的倍数是15,所以返回结果15。

可能有的朋友还觉得CEILING()函数比较抽象,应用范围窄,那么下面我们再举一个例子。

网吧是小伙伴们初中、高中的记忆,某网吧的收费标准为:半小时收费两元,不足半小时按半小时算,超过半小时按每15分钟收费1元算,不足15分钟按15分钟算,现需要计算出每个客户的消费金额。首先我们需要先计算出每个客户实际的上网时长,再对这个时间进行处理,得到实际的计费时长,再根据收费规则计算出实际的收费金额。

操作步骤如下:

①  在D2单元格中输入“=C2-B2”,按Enter键,得到第一位客户的上网时长。保持D2单元格的选中状态,单击鼠标右键,选择“设置单元格格式”,选择“自定义”选项,输入代码“[<1]h"小""时"mm"分";[>1]d"天"h"小""时"mm"分"”,单击确定按钮完成设置。该代码用于将一个时间序列号显示为我们平常输入的时间样式,它可以在时间序列号小于1时,显示“XX小时XX分钟”,而在时间序列号大于1时,显示“XX天XX小时XX分钟”。

② 在E2单元格中输入公式“=IF(D2<1/24/2,2,CEILING(D2*24*60,15)/15*1)”,用于计算出计费金额。其中“D2<1/24/2”部分用于判断D2的时间是否小于半小时,如果是,则返回数字2,否则通过CEILING()函数返回“D2*24*60”的值的15的倍数,再除以15的值,表示一共有多少个15分钟。其中,“D2*24*60”部分是将D2单元格的时间序列,转换为以分钟为单位的时间。

③ 选中D2、E2行,鼠标向下填充至数据区域结尾,网吧的客户收费表就做成了。

其实,如果只是需要向上舍入到某个指定位数的值,使用ROUNDUP()函数也可以完成,该函数基本功能是远离0值,向上舍入数字,其语法格式为:ROUNDUP(number,num_digits)。该函数包含两个必选参数number和num_digits,其中number是函数要处理的数值,必须是数值型数据,而num_digits则表示要保留的小数位数,该参数可以取大于0,等于0,或小于0的任意整数。当num_digits参数大于0时,函数向上舍入到指定的小数位;当num_digits参数等于0时,函数向上舍入到最接近该值的整数;当num_digits参数小于0时,函数在小数点左侧向上进行舍入。

2.向下舍入到最接近基数的整数倍

我们需要将某些数据小数点后的数值向下舍入到某一指定数值的倍数,这时候就可以使用FLOOR()函数来实现。

其语法格式为FLOOR(number,significane),FLOOR是地板、最低限度的意思。从函数的语法格式可以看出FLOOR()函数与CEILING()函数的语法格式完全相同,各参数的意义也完全相同,在此,不多叙述。举个例子能帮助我们更好地理解该函数。

某公司根据员工参加工作的时间计算工龄,工龄计算的截止日期为本月的第一天,参加工作的日期不足12个月的不计工龄。

在C2单元格中输入“=FLOOR(DATEDIF(B2,DATE(YEAR(TODAY()),MONTH(TODAY()),1),"M"),12)/12&"年"”,按Enter键输入公式。该公式包含了多个函数嵌套。其中,“DATE(YEAR(TODAY()),MONTH(TODAY())”部分用于返回当前月份1号的日期,如当前系统日期为2020年2月8日,则该表达式返回结果为2020年2月1日。得到日期后,再通过DATEDIF()函数返回员工参加工作的日期与该日期之间相隔的月份数,最后用FLOOR()函数取最接近12倍的整数,并将得到的结果除以12即可得到员工的实际工龄。

使用CEILING()函数或FLOOR()函数,可以向上或向下取得最接近number的significance的倍数,如果significance参数为1,则与ROUNDUP()函数和ROUNDDOWN()函数的第二参数取0时的结果相同。

2

按指定位数进行四舍五入

四舍五入是数学中常用的数值取舍方法,在EXCEL中对数值进行四舍五入的函数是ROUND()函数,其语法格式为ROUND(number,num_digits)。ROUND()函数、ROUNDUP()函数、ROUNDDOWN()函数的语法格式和参数都相同,其中number表示要进行取舍的数字,num_digits表示要取舍的位数。

(0)

相关推荐