关于一个时间函数的问题

guoguo1982 2005-12-22 10:33:06
我想编写一个计算时间的小程序,
可一用day函数老出问题!代码如下:
Private Sub Command1_Click()

s = #2/12/1969# ' 指定一日期。
Today = Day(s) ' MyDay 的值为 12。

Print Today
End Sub

但它输出为:1900-1-11

我记得在论坛上见过,没找到,怎么回事啊??
急!!!!!!!!!!!
...全文
184 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
weiweiplay 2005-12-22
  • 打赏
  • 举报
回复
因为你只给出了天,Date类型会自动缺省年为1900,月为1,显示的天为你设置的天的前一天,如果你的日期为

s = #2/13/1969# ' 指定一日期。
Today = Day(s) ' MyDay 的值为 12。

Print Today

那么你的输出就是1900-1-12
foreverstar2004 2005-12-22
  • 打赏
  • 举报
回复
today如果定义为date(日期期),当然显示的是日期期格式的值,而不是数值型的值,必须定义为long
guoguo1982 2005-12-22
  • 打赏
  • 举报
回复
输出问题解决了,是因为today定义类型的问题,但为什么定义为date,输出就是1900-1-11那?
guoguo1982 2005-12-22
  • 打赏
  • 举报
回复
谢谢楼上的!!
上官云峰 2005-12-22
  • 打赏
  • 举报
回复
没有问题啊输出的是12啊
weiweiplay 2005-12-22
  • 打赏
  • 举报
回复
定义Today为整型

Dim Today As Long
northwolves 2005-12-22
  • 打赏
  • 举报
回复
比较一下:
Private Sub Command1_Click()
Dim today As Integer
s = #2/12/1969# ' 指定一日期。
today = Day(s) ' MyDay 的值为 12。
MsgBox today
End Sub

Private Sub Command2_Click()
Dim today As Date
s = #2/12/1969# ' 指定一日期。
today = Day(s) ' MyDay 的值为 12。
MsgBox today
End Sub
faysky2 2005-12-22
  • 打赏
  • 举报
回复
测试了一下,输出的是12

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧