在VB中将数值型2004819转换成2004年8月19日的日期格式

ypshilh 2008-04-09 02:19:39
刚接触vb就遇到一个问题,在VB中将数值型2004819转换成2004年8月19日的日期格式,如何转换请高手帮忙,谢谢!
...全文
121 点赞 收藏 17
写回复
17 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
有点难度哦
回复
meiZiNick 2008-05-01
都是很好的建议! 值得学习
回复
Tiger_Zhao 2008-04-10
请少应该将 MSDN 中“Visual Basic 文档\参考\语言参考\函数”目录下浏览一遍,对 VB 基础函数的功能有个印象。
DateDiff("ww", dt, Date())
回复
ypshilh 2008-04-09
谢谢。可以了
回复
波导终结者 2008-04-09
直接Date类型相减,得到天数,除七不就是周数了
回复
ypshilh 2008-04-09
谢谢了
回复
ypshilh 2008-04-09
谢谢Tiger_Zhao你了,我要将dt的结果与系统当前日期相减,将得到的值显示成周数呢,该怎么写?谢谢!
回复
Tiger_Zhao 2008-04-09
自己哪个日历数数,周数算错了,应该这样:
Private Sub Command1_Click()
Dim y As Integer, w As Integer, dt As Date
y = CInt(Mid(Text1.Text, 5, 2))
w = CInt(Mid(Text1.Text, 7, 2))
dt = DateAdd("ww", w - 1, DateSerial(y, 1, 1)) '1月1日为第一周
MsgBox dt
End Sub
回复
bbhere 2008-04-09
format函数
回复
diablofriend 2008-04-09
format(d,“00”)
回复
diablofriend 2008-04-09
?DateAdd("d", 7*37, cdate("2004/01/01 00:00:00"))
?format(format("2004/09/16","yyyymmdd"),"0000年00月00日")
希望这样可以给你一点启发!
回复
ypshilh 2008-04-09
d = Int((Mid(b, 7, 2) * 7) / 30) 得到的是一个不如说是8,用什么函数可以得到08呢
回复
ypshilh 2008-04-09
我的变量是这样定义的
m = "20"
a = date
b = Text1.Text
c = Mid(b, 5, 2)
d = Int((Mid(b, 7, 2) * 7) / 30)
f = (Mid(b, 7, 2) * 7) Mod 30
q = Str((m & c & d & f))
回复
ypshilh 2008-04-09
但是在我的程序中2004,8,19都是变量不固定的,
回复
Tiger_Zhao 2008-04-09
自己拆成3段,然后用函数 DateSerial(2004,8,19) 可以得到日期值。
回复
ypshilh 2008-04-09
是这样的,我要从text1中输入的字符串中取出日期得到系统日期与取出来的日期相差的天数,比如我输入QM11043723123,其中0437代表2004年37周,我将这个转换成了20040819
回复
vbman2003 2008-04-09
你的规则不明确,比如2001119转成什么日子?
如果是8位,问题到不大,比如
20040819

dim s as string
s="20040819"
s=format(s,"####-##-##")
if isdate(s) then s=format(s,"yyyy年mm月dd日")
回复
相关推荐
发帖
VB基础类
创建于2007-09-28

7491

社区成员

VB 基础类
申请成为版主
帖子事件
创建了帖子
2008-04-09 02:19
社区公告
暂无公告