在EXCEL中怎样让两个时间相减:
1、datedif函数是excel的隐藏函数,主要用于计算日期之差,不是四舍五入,是向下取整。
2、以下图为例,在C2单元格输入=DATEDIF(A1,A2,"y"),其中“y”表示计算年份之差。
3、同样在C4输入“=DATEDIF(A1,A2,"m")”,其中“m”表示计算月份之差。
4、同样在C4输入=DATEDIF(A1,A2,"m"),其中“m”表示计算天数之差。还可以直接输入=A2-A1也能求解天数之差。
注意:
小时分钟相减
以下面例子通过两种方法求两者之间小时和分钟的差
在D2输入=(A2-A1)24,表示515小时。
在D3输入=(A2-A1)2460,就是在小时的基础上乘以60换算成分钟
在E2单元格输入=TEXT(A2-A1,"[h]:m"),得到的结果也是小时间隔数,不过各项与上面不一样,其表示5小时15分钟
在E3单元格输入=TEXT(A2-A1,"[m]"),得到分钟数,小时计数法的结果一致。
EXCEL中日期可以直接相减,但是要以日期格式输入;
EXCEL日期以“年/月/日”或“年-月-日”的方式输入,如2014/8/12、2014-8-12,当年的年份可省,年份也可以仅输入后两位,会自动判断为当前世纪的年份;
如下图,要计算两日期间相差多少年,可用公式:=DATEDIF(A1,B1,"Y")。
使用直接做减法运算就可以了;
(时间其实就是数值,1就是1天、也是24小时);
为了在时间差较大,超过1天的时候能够看懂,还是应该用一些函数;
=TEXT(INT(B1-A1),"0天")&TEXT(MOD(B1-A1,1),"hh:mm:ss");
则返回的内容是 天 ::
我们在一列数据日期,然后写下公式
B2单元格内公式如上图所示:
=DATE(YEAR(A2)-20,MONTH(A2),DAY(A2))
YEAR取年,MONTH取月,DAY取日
DATE再将年月日组装在一起,就知道20年前的一天了
如果日期写在A1单元格,想在B1单元格得出该日期减去一年的日期,
则B1单元格写入公式:
公式一
=DATE(YEAR(A1)-1,MONTH(A1),DAY(A1))
如图:
公式二
=EDATE(A1,-12)
再设置单元格格式为日期格式中的一种。
如图:
注:EDATE函数的定义
返回代表指定日期 (start_date) 之前或之后用于指示月份数的日期的序列号。使用函数 EDATE 可以计算与发行日处于一月中同一天的到期日的日期。
如果该函数不可用,并返回错误值 #NAME,请安装并加载“分析工具库”加载宏。
语法
EDATE(start_date,months)
Start_date 为一个代表开始日期的日期。应使用 DATE 函数来输入日期,或者将日期作为其他公式或函数的结果输入。例如,使用函数 DATE(2008,5,23) 输入日期 2008 年 5月 23 日。如果将日期以文本的形式输入,则会出现问题。
Month 为 start_date 之前或之后的月数。正数表示未来日期,负数表示过去日期。
说明
Microsoft Excel 可将日期存储为用于计算的序列号。默认情况下,1900 年 1 月 1 日的默认序列号是 1 而 2008 年 1 月 1 日的默认序列号是 39448,这是因为它距1900 年 1 月 1 日有 39448 天。Microsoft Excel for the Macintosh 使用另外一个默认日期系统。
如果 start_date 不是有效日期,函数 EDATE 返回错误值 #VALUE!。
如果 months 不是整数,将截尾取整。
你是要求天数还是求年数还是求月数?天数:
=date(年,月,日)-date(年,月,日)
另外可以用DATEDIF函数,详细如下:
语法编辑
DATEDIF(start_date,end_date,unit)
Start_date 为一个日期,它代表时间段内的第一个日期或起始日期。
End_date 为一个日期,它代表时间段内的最后一个日期或结束日期。
Unit 为所需信息的返回类型。
Unit 返回
注:结束日期必须大于起始日期
下面举个小例子:在日常工作中非常实用。
假如A1单元格写的也是一个日期,那么下面的三个公式可以计算出A1单元格的日期和今天的时间差,分别是年数差,月数差,天数差。注意下面公式中的引号和逗号括号都是在英文状态下输入的。
=DATEDIF(A1,TODAY(),"Y")计算年数差
=DATEDIF(A1,TODAY(),"M")计算月数差
=DATEDIF(A1,TODAY(),"D")计算天数差
"Y" 时间段中的整年数。
"M" 时间段中的整月数。
"D" 时间段中的天数。
"MD" start_date 与 end_date 日期中天数的差。忽略日期中的月和年。
"YM" start_date 与end_date 日期中月数的差。忽略日期中的年。
"YD" start_date 与 end_date 日期中天数的差。忽略日期中的年。
实例说明编辑
实例1:
题目: 计算出生日期为1973-4-1人的年龄
公式: =DATEDIF("1973-4-1",TODAY(),"Y")
结果: 33
简要说明 当单位代码为"Y"时,计算结果是两个日期间隔的年数
实例2:
题目: 计算日期为1973-4-1和当前日期的间隔月份数
公式: =DATEDIF("1973-4-1",TODAY(),"M")
结果: 403
简要说明 当单位代码为"M"时,计算结果是两个日期间隔的月份数
实例3:
题目: 计算日期为1973-4-1和当前日期的间隔天数
公式: =DATEDIF("1973-4-1",TODAY(),"D")
结果: 12273
简要说明 当单位代码为"D"时,计算结果是两个日期间隔的天数
实例4:
题目: 计算日期为1973-4-1和当前日期的不计年数的间隔天数
公式: =DATEDIF("1973-4-1",TODAY(),"YD")
结果: 220
简要说明 当单位代码为"YD"时,计算结果是两个日期间隔的天数忽略年数差
实例5:
题目: 计算日期为1973-4-1和当前日期的不计月份和年份的间隔天数
公式: =DATEDIF("1973-4-1",TODAY(),"MD")
结果: 6
简要说明 当单位代码为"MD"时,计算结果是两个日期间隔的天数忽略年数和月份之差
实例6:
题目: 计算日期为1973-4-1和当前日期的不计年份的间隔月份数
公式: =DATEDIF("1973-4-1",TODAY(),"YM")
结果: 7
简要说明 当单位代码为"YM"时,计算结果是两个日期间隔的月份数不计相差年数
注意:TODAY()函数获取的是系统当前日期,所有列举的实例为2006-11-7日的计算结果,并不一定和你得到的结果相符。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)