亏光了家产怎么办:如何在VB中计算两个日期间的天数

来源:百度文库 编辑:高校问答 时间:2024/05/03 10:22:20
我是vb初学者,请各位大虾指教.因为是初学请详细说明.在这里感谢了.
最好写的详细点,我看不懂,比如说,先做个什么控件,什么的.

例如:计算2005-05-01 到 2006-02-03 之间的天数

我需要的是两个准确日期之间的天数,请各位大虾帮忙很着急要呀?????????????????????????

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

 语法
 DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]])
 DateDiff 函数语法中有下列命名参数:
描述
 interval 必要。字符串表达式,表示用来计算date1 和 date2 的时间差的时间间隔
 Date1□date2 必要;Variant (Date)。计算中要用到的两个日期。
 Firstdayofweek 可选。指定一个星期的第一天的常数。如果未予指定,则以星期日为第一天。
 firstweekofyear 可选。指定一年的第一周的常数。如果未予指定,则以包含 1 月 1 日的星期为第一周。


例如:计算2005-05-01 到 2006-02-03 之间的天数

MsgBox "从2005-05-01到2006-02-03还有:" & DateDiff("d", CDate("2005-05-01"), CDate("2006-02-03")) & "天"

'首先在FORM中加一个Label控件,一个TextBox控件,一个CommandButton按钮
'你可以用DateDiff函数,这个函数的作用就是判断2个日期型变量的差,DateDiff后边先跟的一个参数是选择按照什么方式计算差值(我们可以按照年,月,日等)
'只需要在TEXT1中输入例如 2006-7-30 就能判断出2日期的日期之差
Private Sub Command1_Click()
Dim Str As String
Str = Text1.Text
Label1.Caption = DateDiff("d", CDate(Format(Now, "YYYY-MM-DD")), CDate(Format(Str, "yyyy-mm-dd")))
'CDate强制转换。把变量强制转换成日期型变量
'这里边第一“d”就是DateDiff的参数。如果按照年来判断,你把"d"改成"yyyy"就可以
'yyyy 年
'q 季
'm 月
'y 一年的日数
'd 日
'w 一周的日数
'ww 周
'h 时
'n 分钟
's 秒
'如果你输入的不想按照例如(2006-10-15)这样输入,只需要改Format(Str, "YYYY-MM-DD")这个里。把这里的"YYYY-MM-DD"改掉
'(06-10-11,就改成Format(Str, "YY-MM-DD")
End Sub

num = CDATE("2006-10-1")-CDATE("2006-9-10")

Private Sub Command1_Click()
Dim Str As String
Str = Text1.Text
Label1.Caption = DateDiff("d", CDate(Format(Now, "YYYY-MM-DD")), CDate(Format(Str, "yyyy-mm-dd")))

DateDiff函数的功能很强的!!
注意使用啊!!