您的位置:首页 > 编程语言 > VB

VBA中DateDiff函数用法

2018-03-06 23:48 274 查看
返回  Variant  ( Long)  的值,表示两个指定日期间的时间间隔数目。
语法
DateDiff( interval, date1, date2 [ , firstdayofweek [ , firstweekofyear ]] )

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

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

设置描述设置描述
yyyy w一周的日数
qww
mh
y一年的日数n分钟
ds
firstdayofweek  参数的设定值如下:

常数描述
vbUseSystem0使用 NLS API  设置
vbSunday1星期日(缺省值)
vbMonday2星期一
vbTuesday3星期二
vbWednesday4星期三
vbThursday5星期四
vbFriday6星期五
vbSaturday7星期六
常数描述
vbUseSystem0用 NLS API  设置。
vbFirstJan11从包含  1  月 1  日的星期开始(缺省值)
vbFirstFourDays2从第一个其大半个星期在新的一年的一周开始
vbFirstFullWeek3从第一个无跨年度的星期开始。
说明
DateDiff 函数可用来决定两个日期之间所指定的时间间隔数目。例如,可以使用 DateDiff 来计算两个日期之间相隔几日, 或计算从今天起到年底还有多少个星期。为了计算 date1 与 date2  相差的日数,可以使用“一年的日数” (y)  或“日” (d) 。当 interval 是“一周的日数” (w)  时,DateDiff 返回两日期间的周数。如果 date1 是星期一, DateDiff 计算到 date2 为止的星期一的个数。这个数包含 date2 但不包含 date1 。不过,如果 interval 是“周” (ww),则DateDiff 函数返回两日期间的“日历周”数。由计算 date1 与 date2  之间星期的个数而得。如果 date2  刚好是星期日,则 date2 也会被加进 DateDiff 的计数结果中;但不论 date1  是否为星期日,都不将它算进去。如果 date1  比 date2  来得晚,则 DateDiff 函数的返回值为负数。firstdayofweek 参数会影响使用时间间隔符号 “W”  或 “WW”  计算的结果。如果 date1  或 date2  是日期文字,则指定的年份成为该日期的固定部分。 但是,如果 date1  或 date2  用双引号  (" ")  括起来,且年份略而不提,则在每次计
算表达式 date1  或 date2  时,当前年份都会插入到代码之中。 这样就可以书写适用于不同年份的程序代码。在计算  12  月 31  日和来年的  1  月 1  日的年份差时,DateDiff 返回  1  表示相差一个年份,虽然实际上只相差一天而已。
DateDiff  函数示例
本示例使用 DateDiff 函数来显示某个日期与今日相差几天。
Dim TheDate As Date    '  声明变量。
Dim Msg
TheDate = InputBox("Enter a date")
Msg = "Days from today: " & DateDiff("d", Now, TheDate)
MsgBox Msg
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息