海子女友:菜鸟发问:请vb学者给看看

来源:百度文库 编辑:神马品牌网 时间:2024/05/09 14:00:50
Private Sub Command1_Click()
Dim days As Integer
Dim data1 As Data
Dim data2 As Data

data1 = O2 / 21 / 2006
data2 = O3 / 21 / 2006
days = data2 - data1
Text1.Text = days
End Sub
哪错了?

这个问题你可以这样的解决:

1:vb语言当中是没有定义有关date数据类型的+,-运算的。所以你直接

相减是不对的,

2:还有就是你的定义部分,Dim data1 As Data ,Dim data2 As Data

应该是笔误,正确的应该是dim data1 as date, dim data2 as date

3:应该使用DateDiff函数 其返回值是表示两个指定日期间的时间间隔数目。

4:正确的写法是:

Private Sub Command1_Click()
Dim days As Integer
Dim data1 As Date
Dim data2 As Date

data1 = #2/21/2006# 'O2 / 21 / 2006
data2 = #3/21/2006#
days = DateDiff("d", data1, data2)
Text1.Text = Str(days)

End Sub

不是的,你们几位都错了
作者,把分数给我
我给你说你哪里出错了呵呵
他们都错了,即使你按他们的做法做了也不会正确的
因为……
呵呵你的错误在这里:
Dim data1 As Data
Dim data2 As Data
因为你声明的是data数据对象,所以按时间来赋值肯定不对
所以你应该这么声明就正确了:
Dim data1 As Date
Dim data2 As Date
把分数给我

补充似水流年00的,如果只是得到天数的话,两个日期/时间类型的数据直接加减是可以的,其他的都对;另,日期赋值还可以有另一种方式,如:
date1 = CDate("2006-01-01")