




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DATEDIF函数计算两个日期间的年数、月数或天数(DATEDIF函数是EXCEL中的一个隐藏函数,在函数向导中是找不到的,可直接输入使用,用于计算年龄、工龄非常好)语法:DATEDIF(date1,date2,code) date1:起始日期 date2:结束日期 code: CODE返回值Y这期间的完全年数M这期间的完全月数D这期间的完全天数MD起始日期与结束日期的同月间隔天数。日期的月数和天数被忽略。YM起始日期与结束日期的间隔月数。日期的年数和天数被忽略。YD起始日期与结束日期的同年间隔天数。日期的年数被忽略。 例1:计算两个日期间的年数、月数或天数起始日期1980-6-14在A5,结束日期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)&个月零&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天计算),后者按实际天数计算。 当然,如果上述两个日期函数引用的开始日期和结束日期两个参数可以通过引用单元格地址获得,则可以直接引用相应单元格的地址即可DATEDIF函数实例:计算总借款天数和还款剩余天数上例我们将了利用excel的DATEDIF函数来自动追加工龄工资。本例我们讲解利用DATEDIF函数来计算借款天数和还款剩余天数。我们使用DATEDIF函数,根据借款日期与还款日期计算出总借款天数和还款剩余天数。如图所示:选中E2单元格,输入公式:=DATEDIF(C2,D2,D),就求出了天人科技的总借款天数。向下拖动,进行公式填充,即可快速计算出另外单位的借款天数。选中F2单元格,输入公式:=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-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表示忽略年份和月份的差别,只计所差的天数(即视两日期为同年同月)。要善于利用论坛的搜索功能。有什么函数不太清楚的,可在论坛上搜索。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/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,设置单元格格式,数字,常规。其他事情你不用担心,Excel把数字1当做1900-01-01,今天是数字40384,即从1900年1月1日算起,过去40384天了。/waikehl/xi/xi8/hl2_3a.htm#1/Article/Class305/309387.shtml/3353.html农历VBA如何使用VBA1 在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), MonName(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, grid_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) = 星期六天干名称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) = 亥属相名称ShuXiang(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) = 二十DayName(21) = 二十一DayName(22) = 二十二DayName(23) = 二十三DayName(24) = 二十四DayName(25) = 二十五DayName(26) = 二十六DayName(27) = 二十七DayName(28) = 二十八DayName(29) = 二十九DayName(30) = 三十农历月份名MonName(0) = *MonName(1) = 正MonName(2) = 二MonName(3) = 三MonName(4) = 四MonName(5) = 五MonName(6) = 六MonName(7) = 七MonName(8) = 八MonName(9) = 九MonName(10) = 十MonName(11) = 十一MonName(12) = 腊公历每月前面的天数MonthAdd(0) = 0MonthAdd(1) = 31MonthAdd(2) = 59MonthAdd(3) = 90MonthAdd(4) = 120MonthAdd(5) = 151MonthAdd(6) = 181MonthAdd(7) = 212MonthAdd(8) = 243MonthAdd(9) = 273MonthAdd(10) = 304MonthAdd(11) = 334农历数据NongliData(0) = 2635NongliData(1) = 333387NongliData(2) = 1701NongliData(3) = 1748NongliData(4) = 267701NongliData(5) = 694NongliData(6) = 2391NongliData(7) = 133423NongliData(8) = 1175NongliData(9) = 396438NongliData(10) = 3402NongliData(11) = 3749NongliData(12) = 331177NongliData(13) = 1453NongliData(14) = 694NongliData(15) = 201326NongliData(16) = 2350NongliData(17) = 465197NongliData(18) = 3221NongliData(19) = 3402NongliData(20) = 400202NongliData(21) = 2901NongliData(22) = 1386NongliData(23) = 267611NongliData(24) = 605NongliData(25) = 2349NongliData(26) = 137515NongliData(27) = 2709NongliData(28) = 464533NongliData(29) = 1738NongliData(30) = 2901NongliData(31) = 330421NongliData(32) = 1242NongliData(33) = 2651NongliData(34) = 199255NongliData(35) = 1323NongliData(36) = 529706NongliData(37) = 3733NongliData(38) = 1706NongliData(39) = 398762NongliData(40) = 2741NongliData(41) = 1206NongliData(42) = 267438NongliData(43) = 2647NongliData(44) = 1318NongliData(45) = 204070NongliData(46) = 3477NongliData(47) = 461653NongliData(48) = 1386NongliData(49) = 2413NongliData(50) = 330077NongliData(51) = 1197NongliData(52) = 2637NongliData(53) = 268877NongliData(54) = 3365NongliData(55) = 531109NongliData(56) = 2900NongliData(57) = 2922NongliData(58) = 398042NongliData(59) = 2395NongliData(60) = 1179NongliData(61) = 267415NongliData(62) = 2635NongliData(63) = 661067NongliData(64) = 1701NongliData(65) = 1748NongliData(66) = 398772NongliData(67) = 2742NongliData(68) = 2391NongliData(69) = 330031NongliData(70) = 1175NongliData(71) = 1611NongliData(72) = 200010NongliData(73) = 3749NongliData(74) = 527717NongliData(75) = 1452NongliData(76) = 2742NongliData(77) = 332397NongliData(78) = 2350NongliData(79) = 3222NongliData(80) = 268949NongliData(81) = 3402NongliData(82) = 3493NongliData(83) = 133973NongliData(84) = 1386NongliData(85) = 464219NongliData(86) = 605NongliData(87) = 2349NongliData(88) = 334123NongliData(89) = 2709NongliData(90) = 2890NongliData(91) = 267946NongliData(92) = 2773NongliData(93) = 592565NongliData(94) = 1210NongliData(95) = 2651NongliData(96) = 395863NongliData(97) = 1323NongliData(98) = 2707NongliData(99) = 265877生成当前公历年、月、日 = GongliStrcurYear = yearcurMonth = monthcurDay = dayGongliStr = curYear & 年If (curMonth 10) Then GongliStr = GongliStr & 0 & curMonth & 月Else GongliStr = GongliStr & curMonth & 月End IfIf (curDay WeekdayStrcurWeekday = Weekday(curTime)WeekdayStr = WeekName(curWeekday)计算到初始时间1921年2月8日的天数:1921-2-8(正月初一)TheDate = (curYear - 1921) * 365 + Int(curYear - 1921) / 4) + curDay + MonthAdd(curMonth - 1) - 38If (curYear Mod 4) = 0 And curMonth 2) Then TheDate = TheDate + 1End If计算农历天干、地支、月、日isEnd = 0m = 0Do If (NongliData(m) 4095) Then k = 11 Else k = 12 End If n = k Do If (n 0) Then Exit Do End If 获取NongliData(m)的第n个二进制位的值 bit = NongliData(m) For i = 1 To n Step 1 bit = Int(bit / 2) Next bit = bit Mod 2 If (TheDate (Int(NongliData(m) / 65536) + 1) Then curMonth = curMonth - 1 End IfEnd If生成农历天干、地支、属相 = NongliStrNongliStr = 农历 & TianGan(curYear - 4) Mod 60) Mod 10) & DiZhi(curYear - 4) Mod 60) Mod 12) & 年NongliStr = NongliStr & ( & ShuXiang(curYear - 4) Mod 60) Mod 12) & 生成农历月、日 = NongliDayStrIf (curMonth 1) Then NongliDayStr = 闰 & MonName(-1 * curMonth)Else NongliDayStr = MonName(curMonth)End IfNongliDayStr = NongliDayStr & 月NongliDayStr = NongliDayStr & DayName(curDay) & )calendar = NongliStr & NongliDayStrEnd FunctionExcel networkdays函数不能用是怎么回事啊-在“工具”菜单上,单击“加载宏”。 在“可用加载宏”列表中,选中“分析工具库”框,再单击“确定”。 就有了以 2009-4-23 为例,100天后是2009-8-1,你想得到什么结果,100天后的日期2009-8-1?还是100天后是1号?假设日期放在A1=A1+100结果为日期2009-8-1=DAY(A1+100) 结果为1顺便说一下,日期是一个序列号,以1900年日期系统为例,数字1就是1900-1-1,2就是1900-1-2,其他类推,因此可以直接加减。时间就是小数部分,如0.5,就是12小时,数字1.5就是1900-1-1 12:00excel中日期是2014-9-1,用什么函数可以直接显示年月转换下=TEXT(2014-9-1,YYYY-MM)可以直接引用的,比如在A1单元格=TEXT(A1,YYYY-MM) =TEXT(A1,YYYYMM) = TEXT(A1,YYYY+MM)日期与时间函数日期函数函数名函数说明语法DATE返回代表特定日期的系列数。DATE(year,month,day)DATEDIF计算两个日期之间的天数、月数或年数。DATEDIF(start_date,end_date,unit)DATEVALUE函数 DATEVALUE 的主要功能是将以文字表示的日期转换成一个系列数。DATEVALUE(date_text)DAY返回以系列数表示的某日期的天数,用整数 1 到 31 表示。DAY(serial_number)DAYS360按照一年 360 天的算法(每个月以 30 天计,一年共计 12 个月),返回两日期间相差的天数。DAYS360(start_date,end_date,method)EDATE返回指定日期 (start_date) 之前或之后指定月份数的日期系列数。使用函数 EDATE 可以计算与发行日处于一月中同一天的到期日的日期。EDATE(start_date,months)EOMONTH返回 start-date 之前或之后指定月份中最后一天的系列数。用函数 EOMONTH 可计算特定月份中最后一天的时间系列数,用于证券的到期日等计算。EOMONTH(start_date,months)MONTH返回以系列数表示的日期中的月份。月份是介于 1(一月)和 12(十二月)之间的整数。MONTH(serial_num
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年电视台主持人口试指南预测试题及答案解读
- 电仪安全基础知识培训
- 2025年仓库安全员必-备知识面试模拟题及答案
- 赫初可颜眼部护理误区
- 制作风筝教学课件
- 信息化交流教学课件
- 田径安全知识培训内容课件
- 单词教学主题课件下载
- 贵州省毕节市2024-2025学年高二下学期期末考试化学试题(含答案)
- 新解读《GB-T 18916.37 - 2018取水定额 第37部分:湿法磷酸》
- 牛仔裤廓形趋势报告
- 年产2000吨电子级超高纯石英晶体材料制造项目环评报告表
- 2025重庆对外建设集团招聘41人笔试参考题库附带答案详解(10套)
- 2025年秋季开学第一次全体教师大会上校长讲话-:想为、敢为、勤为、善为
- 面点摆盘造型技术
- 2025年e答网护士三基考试试题及答案
- 《无人机飞行控制技术》全套教学课件
- 2025年教育管理领导力案例分析试题及答案
- 信息平台造价管理办法
- DG-TJ08-2202-2024 建筑信息模型技术应用标准(城市轨道交通)
- 2025年度学校国际交流合作计划
评论
0/150
提交评论