datedif函数实例

上传人:n**** 文档编号:89209670 上传时间:2019-05-21 格式:DOC 页数:15 大小:128.50KB
返回 下载 相关 举报
datedif函数实例_第1页
第1页 / 共15页
datedif函数实例_第2页
第2页 / 共15页
datedif函数实例_第3页
第3页 / 共15页
datedif函数实例_第4页
第4页 / 共15页
datedif函数实例_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《datedif函数实例》由会员分享,可在线阅读,更多相关《datedif函数实例(15页珍藏版)》请在金锄头文库上搜索。

1、DATEDIF函数计算两个日期间的年数、月数或天数(DATEDIF函数是EXCEL中的一个隐藏函数,在函数向导中是找不到的,可直接输入使用,用于计算年龄、工龄非常好)语法:DATEDIF(date1,date2,code) date1:起始日期 date2:结束日期 code: CODE返回值Y这期间的完全年数M这期间的完全月数D这期间的完全天数MD起始日期与结束日期的同月间隔天数。日期的月数和天数被忽略。YM起始日期与结束日期的间隔月数。日期的年数和天数被忽略。YD起始日期与结束日期的同年间隔天数。日期的年数被忽略。 例1:计算两个日期间的年数、月数或天数起始日期1980-6-14在A5,结

2、束日期B52011-9-10在B5,在C5中输入公式=DATEDIF(A5,B5,y)可计算出相隔年数,返回31。 例2:计算一个人的年龄某人的出生年月为1968-7-13,在C13单元格,今天是2012-4-23计算年数,公式为=DATEDIF($C$13,TODAY(),y),返回43。计算月数,公式为=DATEDIF($C$13,TODAY(),ym),返回9。计算天数,公式为=DATEDIF($C$13,TODAY(),md),返回10。这个人的年龄可用以下公式连接成文本:=年龄是&DATEDIF(C13,TODAY(),y)&岁&DATEDIF(C13,TODAY(),ym)&个月零

3、&DATEDIF(C13,TODAY(),md)&天返回:年龄是43岁9个月零10天。在Excel 2003中,日期函数DAYS360和DATEDIF的起始日期和结束日期两个参数,如果要在函数中直接输入,必须使用DATE(年,月,日)函数输入,不能以文本形式输入,否则出错。例如,要用上述两个函数计算起始日期为1920年2月3日,结束日期为2012年3月13日之间的天数,可以这样输入“=days360(date(1920,2,3),date(2012,3,13)或 “=datedif(date(1920,2,3),date(2012,3,13),d),前者以每年360天进行计算(即按平均每月30

4、天计算),后者按实际天数计算。 当然,如果上述两个日期函数引用的开始日期和结束日期两个参数可以通过引用单元格地址获得,则可以直接引用相应单元格的地址即可DATEDIF函数实例:计算总借款天数和还款剩余天数上例我们将了利用excel的DATEDIF函数来自动追加工龄工资。本例我们讲解利用DATEDIF函数来计算借款天数和还款剩余天数。我们使用DATEDIF函数,根据借款日期与还款日期计算出总借款天数和还款剩余天数。如图所示:选中E2单元格,输入公式:=DATEDIF(C2,D2,D),就求出了天人科技的总借款天数。向下拖动,进行公式填充,即可快速计算出另外单位的借款天数。选中F2单元格,输入公式

5、:=DATEDIF (TODAY(),D2,”D”),就求出了天人科技的还款剩余天数。向下拖动,进行公式填充,即可快速计算出另外单位的还款剩余天数。days360(2004-2-25,2004-3-2)=7,为什么会等于7呢?而不等于6呢? days360按照一年 360 天的算法(每个月以 30 天计,一年共计 12 个月)=DATEDIF(2004-2-25,2004-3-2,d)或=2004-3-2-2004-2-25DATEIF()是宏函数.可以方便地求相隔月年日.不过主要还是用在日以外的.DATEDIF是Excel中的一个隐藏函数,在函数向导中是找不到的。此函数最初是Lotus 1-

6、2-3里面的函数,微软为了使Excel与Lotus 1-2-3兼容而采用了它,但不知为何没写入文字资料。有人说是与知识产权有关。它用于返回两个日期参数的差值。 其语法为:=DATEDIF(Date1,Date2,Interval)其中date1必须早于date2,否则返回#NUM! 参数Interval可以在y、m、d、ym、yd、md 六个里面选。 前三个(y、m、d)当然表示要求返回两个日期相差的年、月、日数。后三个可能需要较多解释:ym表示忽略年份的差别,只计所差的月份(即视两日期在同一年)。yd表示忽略年份的差别,只计所差的天数(即视两日期在同一年)。md表示忽略年份和月份的差别,只计

7、所差的天数(即视两日期为同年同月)。要善于利用论坛的搜索功能。有什么函数不太清楚的,可在论坛上搜索。matsumi 2004-3-21 10:11=DATEDIF(2004-2-25,2004-3-2,d)是6天=2004-3-2-2004-2-25是6天days360(2004-2-25,2004-3-2)是7天为什么结果不一样?示例DATEDIF(2001/1/1,2003/1/1,Y)等于2,即时间段中有两个整年。DATEDIF(2001/6/1,2002/8/15,D)等于440,即在2001年6月1日和2002年8月15日之间有440天。DATEDIF(2001/6/1,2002/8

8、/15,YD)等于75,即在6月1日与8月15日之间有75天,忽略日期中的年。DATEDIF(2001/6/1,2002/8/15,MD)等于14,即开始日期1和结束日期15之间的差,忽略日期中的年和月假设小日期输入在单元格A1,大日期在B1。在C1输入 =B1-A1+1或者=DATEDIF(A1,B1,d)+1就是你要的。可能的话,需要右键设置单元格格式为数字。追问: 这样算出来会是什么?这不符合我的要求,再说要是润月的28天,怎么算,我要是自动会算,不要人工去算,如果这个时间列很多,上百个,时间也乱,你怎么去算?回答: 呵呵,我已经提醒过你了。右键点C1,设置单元格格式,数字,常规。其他事

9、情你不用担心,Excel把数字1当做1900-01-01,今天是数字40384,即从1900年1月1日算起,过去40384天了。http:/ 在EXCEL里工具栏上右击,选控件工具箱2 点里面的按钮,在工作表上添加3 右击新加的按钮,查看代码按ALT+F11 再 插入 模块把下面的代码制复制到模块中,然后 在B1中输入:=calendar(A1)假设日期在A1。Option ExplicitDim WeekName(7), MonthAdd(11), NongliData(120), TianGan(9), DiZhi(11), ShuXiang(11), DayName(30), MonNa

10、me(12)Dim curTime, curYear, curMonth, curDay, curWeekdayDim GongliStr, WeekdayStr, NongliStr, NongliDayStrDim i, m, n, k, isEnd, bit, TheDate, num1, num2Dim year, month, day, grid, grid_dateFunction calendar(grid)grid_date = gridyear = Mid(grid_date, 1, 4)num1 = InStr(grid_date, -)num2 = InStr(6, gr

11、id_date, -)If (num2 - num1) = 3 Then month = Mid(grid_date, 6, 2) day = Mid(grid_date, 9, 2) Else month = Mid(grid_date, 6, 1) day = Mid(grid_date, 8, 2) End If星期名WeekName(0) = * WeekName(1) = 星期日WeekName(2) = 星期一WeekName(3) = 星期二WeekName(4) = 星期三WeekName(5) = 星期四WeekName(6) = 星期五WeekName(7) = 星期六天干

12、名称TianGan(0) = 甲TianGan(1) = 乙TianGan(2) = 丙TianGan(3) = 丁TianGan(4) = 戊TianGan(5) = 己TianGan(6) = 庚TianGan(7) = 辛TianGan(8) = 壬TianGan(9) = 癸地支名称DiZhi(0) = 子DiZhi(1) = 丑DiZhi(2) = 寅DiZhi(3) = 卯DiZhi(4) = 辰DiZhi(5) = 巳DiZhi(6) = 午DiZhi(7) = 未DiZhi(8) = 申DiZhi(9) = 酉DiZhi(10) = 戌DiZhi(11) = 亥属相名称ShuX

13、iang(0) = 鼠ShuXiang(1) = 牛ShuXiang(2) = 虎ShuXiang(3) = 兔ShuXiang(4) = 龙ShuXiang(5) = 蛇ShuXiang(6) = 马ShuXiang(7) = 羊ShuXiang(8) = 猴ShuXiang(9) = 鸡ShuXiang(10) = 狗ShuXiang(11) = 猪农历日期名DayName(0) = *DayName(1) = 初一DayName(2) = 初二DayName(3) = 初三DayName(4) = 初四DayName(5) = 初五DayName(6) = 初六DayName(7) = 初七DayName(8) = 初八DayName(9) = 初九DayName(10) = 初十DayName(11) = 十一DayName(12) = 十二DayName(13) = 十三DayName(14) = 十四DayName(15) = 十五DayName(16) = 十六DayName(17) = 十七DayName(18) = 十八DayName(19) = 十九DayName(20

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号