日期和时间函数DateAdd

【名称】
    DateAdd
【类别】
    日期和时间函数
【原形】
    DateAdd(interval, number, date)
【参数】
      DateAdd 函数语法中有下列命名参数:
    部分
【描述】
    interval
    必选。字符串表达式,是所要加上去的时间间隔。
    number
    必选。数值表达式,是要加上的时间间隔的数目。其数值可以为正数(得到未来的日期),也可以为负数(得到过去的日期)。
    date
    必选。Variant (Date) 或表示日期的文字,这一日期还加上了时间间隔。
      对于函数DateAdd(时间单位,时间,D),其时间单位为一个字符串,表示所要加上的时间单位,其取值及含义如下表所示;时间参数可以是数值型表达式,表示所要加上的时间;其函数值可以是正数(得到未来的日期),也可以是负数(得到过去的日期)。如果T参数值包含小数点,则在计算时先四舍五入,再求函数值。
    表 DateAdd函数中interval 参数(时间单位参数)取值及含义
    时间单位
    含义
    时间单位
    含义
    yyyy
    年
    d
    日
    q
    季
    w
    一周的日数
    m
    月
    h
    时
    y
    一年的日数
    n
    分
    ww
    周
    s
    秒
    
【返回值】
    返回包含一个日期的 Variant (Date),这一日期还加上了一段时间间隔。
【异常/错误】
    无
【描述】
    返回参考日期D加上一段时间T之后的日期,时间单位为一个字符串,表示所要加上的时间的单位,其取值及含义如上表所示。例如:执行Print DateAdd(”m”,2,Date) 后的结果为:2003-6-23。执行Print DateAdd(”q”,1,Date) 后的结果为:2003-7-23
【示例】
    本示例先取得一个日期,再用 DateAdd 函数显示未来数月后的日期。
    Dim FirstDate As Date ' 声明变量。
    Dim IntervalType As String
    Dim Number As Integer
    Dim Msg
    IntervalType = "m" ' "m"指定以“月份”作为间隔。
    FirstDate = InputBox("Enter a date")
    Number = InputBox("Enter number of months to add")
    Msg = "New date: " & DateAdd(IntervalType, Number, FirstDate)
    MsgBox Msg
【备注】
    可以使用 DateAdd 函数对日期加上或减去指定的时间间隔。例如,可以用 DateAdd 来计算距今天为三十天的日期;或者计算距现在为 45 分钟的时间。
    为了对 date 加上“日”,可以使用“一年的日数” (“y”),“日” (”d”) 或“一周的日数” (”w”)。
    DateAdd 函数将不返回有效日期。在以下实例中将 1 月31 日加上一个月:
    DateAdd(m, 1, 31-Jan-95)
    上例中,DateAdd 返回 1995 年 2 月 28 日,而不是 1995 年 2 月 31 日。如果 date 是 1996 年 1 月 31 日,则由于 1996 年是闰年,返回值是 1996 年 2 月 29 日。
    如果计算的日期超前 100 年(减去的年度超过 date 中的年份),就会导致错误发生。
    如果 number 不是一个 Long 值,则在计算时取最接近的整数值来计算。
    注意???DateAdd 返回值的格式由 Control Panel设置决定,而不是由传递到date 参数的格式决定。
      日期和时间函数的函数名、函数值类型和函数功能如下表所示。针对表中的举例,设当前的系统时间为2003年4月23日下午两点18分30秒。
    表 日期和时间函数
    函数名
    函数值类型
    功能
    举例
    Now
    Date
    返回当前的系统日期和系统时间
    执行Print Now后的结果为:2003-4-23 14:18:30
    Date[$][()]
    Date
    返回当前的系统日期
    执行Print Date后的结果为:2003-4-23
    Time[$][()]
    Date
    返回当前的系统时间
    执行Print Time后的结果为:14:18:30
    DateSerial(年,月,日)
    Integer
    相对1899年12月30日(为0)返回一个天数值。其中的年、月、日参数为数值型表达式
    执行Print DateSerial (99,06,01)- DateSerial (99,05,01) 后的结果为:31
    DateValue(C)
    Integer
    相对1899年12月30日(为0)返回一个天数值,参数C为字符型表达式
    执行Print DateValue (“99,06,01”)-DateValue(“99,05,01”) 后的结果为:31
    Year(D)
    Integer
    返回日期D的年份,D可以是任何能够表示日期的数值、字符串表达式或它们的组合。其中,参数为天数时,函数值为相对于1899年12月30日后的指定天数的年号,其取值在1753到2078之间
    执行Print Year(Date) 后的结果为:2003
    执行Print Year(365) 后的结果为:1900
    1899年12月30日后的365天是1900年
    Month(D)
    Integer
    返回日期D的月份,函数值为1到12之间的整数
    执行Print Month(Date) 后的结果为:8
    Day(D)
    Integer
    返回日期D的日数,函数值为1到31之间的整数
    执行Print Day(Date) 后的结果为:23
    WeekDay(D)
    Integer
    返回日期D是星期几, 函数值与星期的对应关系如表2.6所示
    执行Print WeekDay (Date)后的结果为:3
    Hour(T)
    Integer
    返回时间参数中的小时数,函数值为0到23之间的整数
    执行Print Hour(Now)后的结果为:14
    Minute(T)
    Integer
    返回时间参数中的分钟数,函数值为0到59之间的整数
    执行Print Minute(Now) 后的结果为:18
    Second(T)
    Integer
    返回时间参数中的秒数,函数值为0到59之间的整数
    执行PrintSecond(Now) 后的结果为:30
    DateAdd(时间单位,时间,D)
    Date
    返回参考日期D加上一段时间T之后的日期,时间单位为一个字符串,表示所要加上的时间的单位,其取值及含义如表2.7所示
    执行Print DateAdd(”m”,2,Date) 后的结果为:
    2003-6-23。
    执行Print DateAdd(”q”,1,Date) 后的结果为:
    2003-7-23
    DateDiff(时间单位,D1,D2)
    Long
    返回两个指定日期D1和D2之间的间隔时间。如果日期D1比D2早,则函数值为正数,否则函数值为负数。时间单位,同DateAdd函数的时间单位参数
    执行Print DateDiff (“m”,#6/16/2002#,#6/16/2003#后的结果为:12
    执行Print DateDiff (“m”,#6/16/2003#,#6/16/2002#后的结果为:-12
    IsDate(参数)
    Boolean
    判断参数是否可以转换成日期,参数可以是任何类型的有效表达式。如果参数的值可转化成日期型数据,则函数值为Tree,否则函数值为False。在Microsoft Windows中,其范围为公元100年1月1日至公元9999年12月31日。
    IsDate(99-6-18)=False
    IsDate(“99-6-18")=True
      说明:(1)在表2.5中,日期参数D是任何能够表示为日期的数值型表达式、字符串型表达式或它们的组合。时间参数T是任何能够表示为时间的数值型表达式、字符串型表达式或它们的组合。
      当参数D是数值型表达式时,其值表示相对于1899年12月30日前后天数,负数是1899年12月30日以前,正数是1899年12月30日以后。
      (2)星期函数Weekday(D)的函数值与星期的对应关系如下表所示。
    表 星期函数Weekday(D)的函数值与星期的对应关系
    函数值
    星期
    函数值
    星期
    1
    星期日
    5
    星期四
    2
    星期一
    6
    星期五
    3
    星期二
    7
    星期六
    4
    星期三
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值