Microsoft技术社区联盟成员,全球领先的Excel门户,Office培训学习的最佳社区
加关注|繁體中文 切换到窄版

ExcelHome技术论坛

 找回密码
 免费注册

用新浪微博连接

一步搞定

QQ登录

只需一步,快速开始

      高级搜索
魔方网表,Excel终结者,永久免费 Excel服务器学习和下载-做管理系统 Excel Home官方微博精品教程库
Excel不给力? 何不试试FoxTable! 2014年下半年Excel免费培训班计划 Excel协同平台+ERP标准框架+免费设计模板 免费下载Excel行业应用视频教程
Excel 2007表格基本操作秘技 免费学习Word 2007实战技巧视频 前所未见,90集Excel2010视频教程公开 最权威、易懂的VBA学习宝典
超级强悍, 无比易用的 Excel 工具集 你的Excel 2010函数公式学习锦囊 欲罢不能, 过目难忘的 Office 新界面 免费的Excel考勤计算系统

怎样取得2日期之间的年数???

查看: 1590|回复: 7| 收藏 :0
  • 39财富
  • 0鲜花
  • 0技术
    • 等级 2EH初级
    积分排行
    3000+
    帖子
    7
    精华
    0
    微积分
    0
    发表于 2007-7-9 13:46:11 |显示全部楼层
    分享到:

    怎样取得2日期之间的年数??? [复制链接]

    比如2个日期,2003--4-12,另一个日期为2005-5-13

    有什么函数可以直接取得这2个日期之间相隔多少年吗?????

    急急,帮帮忙!!!!!!!!!!!!

  • 18891财富
  • 74鲜花
  • 2技术
  • 积分排行
    109
    帖子
    7349
    精华
    0
    微积分
    0

    大侠勋章

    发表于 2007-7-9 13:54:39 |显示全部楼层
    =DATEDIF(A1,B1,"y")
  • 3618财富
  • 2鲜花
  • 2技术
    • 等级 4EH高级
    积分排行
    621
    帖子
    1399
    精华
    0
    微积分
    0
    发表于 2007-7-9 14:00:21 |显示全部楼层
    =DATEDIF("2003-4-12","2005-5-13","y")
  • 39财富
  • 0鲜花
  • 0技术
    • 等级 2EH初级
    积分排行
    3000+
    帖子
    7
    精华
    0
    微积分
    0
    发表于 2007-7-9 14:13:19 |显示全部楼层

    奇怪,怎么不能直接调用这个函数

    提示:子过程或函数为定义

  • 18891财富
  • 74鲜花
  • 2技术
  • 积分排行
    109
    帖子
    7349
    精华
    0
    微积分
    0

    大侠勋章

    发表于 2007-7-9 14:22:42 |显示全部楼层

    加载宏里有个分析工具箱,打勾。(简体版是否这个名词?)

  • 19144财富
  • 201鲜花
  • 22技术
  • 积分排行
    77
    帖子
    7838
    精华
    4
    微积分
    0

    大侠勋章 金牌优秀会员 优秀会员

    发表于 2007-7-9 14:27:53 |显示全部楼层
    QUOTE:
    以下是引用letian1027在2007-7-9 14:13:19的发言:

    奇怪,怎么不能直接调用这个函数

    提示:子过程或函数为定义

    VBA中用DateDiff函数.

    DateDiff 函数

          

    返回 Variant (Long) 的值,表示两个指定日期间的时间间隔数目。

    语法

    DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])

    DateDiff 函数语法中有下列命名参数

    部分描述
    interval必要。字符串表达式,表示用来计算date1date2 的时间差的时间间隔
    Date1□date2必要;Variant (Date)。计算中要用到的两个日期。
    Firstdayofweek可选。指定一个星期的第一天的常数。如果未予指定,则以星期日为第一天。
    firstweekofyear可选。指定一年的第一周的常数。如果未予指定,则以包含 1 月 1 日的星期为第一周。

    设置

    interval 参数的设定值如下:

    设置描述
    yyyy
    q
    m
    y一年的日数
    d
    w一周的日数
    ww
    h
    n分钟
    s

    firstdayofweek 参数的设定值如下:

    常数描述
    vbUseSystem0使用 NLS API 设置。
    vbSunday1星期日(缺省值)
    vbMonday2星期一
    vbTuesday3星期二
    vbWednesday4星期三
    vbThursday5星期四
    vbFriday6星期五
    vbSaturday7星期六

    常数描述
    vbUseSystem0用 NLS API 设置。
    vbFirstJan11从包含 1 月 1 日的星期开始(缺省值)。
    vbFirstFourDays2从第一个其大半个星期在新的一年的一周开始。
    vbFirstFullWeek3从第一个无跨年度的星期开始。

    说明

    DateDiff 函数可用来决定两个日期之间所指定的时间间隔数目。例如,可以使用 DateDiff 来计算两个日期之间相隔几日,或计算从今天起到年底还有多少个星期。

    为了计算 date1date2 相差的日数,可以使用“一年的日数”(y) 或“日”(d)。当 interval 是“一周的日数”(w) 时,DateDiff 返回两日期间的周数。如果 date1 是星期一,DateDiff 计算到 date2 为止的星期一的个数。这个数包含 date2 但不包含 date1。不过,如果 interval 是“周”(ww),则 DateDiff 函数返回两日期间的“日历周”数。由计算 date1date2 之间星期日的个数而得。如果 date2 刚好是星期日,则 date2 也会被加进 DateDiff 的计数结果中;但不论 date1 是否为星期日,都不将它算进去。

    如果 date1 date2 来得晚,则 DateDiff 函数的返回值为负数。

    firstdayofweek 参数会影响使用时间间隔符号 “W” 或 “WW” 计算的结果。

    如果 date1 date2 日期文字,则指定的年份成为该日期的固定部分。但是,如果 date1 date2 用双引号 (" ") 括起来,且年份略而不提,则在每次计算表达式 date1 date2 时,当前年份都会插入到代码之中。这样就可以书写适用于不同年份的程序代码。

    在计算 12 月 31 日和来年的 1 月 1 日的年份差时,DateDiff 返回 1 表示相差一个年份,虽然实际上只相差一天而已。

  • 4562财富
  • 30鲜花
  • 1技术
    • 等级 4EH高级
    积分排行
    681
    帖子
    1427
    精华
    0
    微积分
    0
    发表于 2007-7-9 15:17:46 |显示全部楼层

    在VBA中使用Datedif函数求时间间隔:

    http://club.excelhome.net/viewthread.php?tid=241515&replyID=&skin=0

    QQ:449617856
  • 725财富
  • 5鲜花
  • 0技术
    • 等级 2EH初级
    积分排行
    3000+
    帖子
    156
    精华
    0
    微积分
    0
    发表于 2007-7-9 16:03:10 |显示全部楼层
    =YEAR(B1)-YEAR(A1)

    发表回复

    您需要登录后才可以回帖 登录 | 免费注册

    发帖时请遵守我国法律,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任。
    关闭

    最新热点

    关于发帖要求邮箱认证的说明
    - 注意:自2014/8/1起,未完成邮箱认证的会员将无法发帖!
    如何完成邮箱认证?请点击下方“查看”。

    查看 »

    回顶部