Office中国论坛/Access中国论坛
标题:
有经验的高手教教:插入表中的日期为什么变成1/30/1900?
[打印本页]
作者:
secondonsite
时间:
2006-6-15 18:32
标题:
有经验的高手教教:插入表中的日期为什么变成1/30/1900?
我定义了一个日期变量PayDate,用插入语句写道表Table中一概变成1/30/1900.请高手点睛。
Insert Into Table (ItermDate) Select DateAdd("m", 1, PayDate)
作者:
secondonsite
时间:
2006-6-15 19:08
补充一句:ItermDate字段也是日期型。
作者:
andymark
时间:
2006-6-15 19:10
变量PayDate 的类型是日期吗
作者:
secondonsite
时间:
2006-6-15 19:15
PayDate变量定义的是:
Dim PayDate As Date
作者:
secondonsite
时间:
2006-6-15 19:24
字段ItermDate定义的是
Short Date
作者:
Benjamin_luk
时间:
2006-6-15 20:28
是否已将日期赋予了PayDate?
从你贴的代码中看不到这样的语句。[em08]
作者:
secondonsite
时间:
2006-6-15 20:34
值已经赋了。下面是原代码。
Dim PayDate As Date
PayDate = DLookup("ItermDate", "Iterm", "Order = " & DMax("[Order]", "Iterm", "Notes Like " & "'Pay the loan of Camry'"))
While Date >= DateAdd("m", 1, PayDate) And Date <= DateAdd("m", 36, "1/4/2006")
PayDate = DateAdd("m", 1, PayDate)
DoCmd.RunSQL "INSERT INTO Iterm ( Notes, SortOrder, Charges, ItermDate, Remark ) SELECT 'Pay the loan of Camry' AS Notes, " & OutlayID & " AS SortOrder, " & Payment & " AS Charges, " & Format(PayDate, "Short Date") & " AS ItermDate, " & Format(PayDate, "Short Date") & " AS Remark"
Wend
作者:
secondonsite
时间:
2006-6-15 20:50
奇怪的是,我用一文本框观察PayDate变量,显示6/4/2006.这是正常显示(文本框设成Short Date).但打开表还是错的1/30/1900.我将光标放上去,好像变成时间了。似乎将时间12:30:00按日期格式显示的结果。真费解!
作者:
Benjamin_luk
时间:
2006-6-15 21:14
在VBA中通配符是这样引用的:
myValue,
文本: ‘“& myValue &”’
数字:“& myValue &”
日期:#“& myValue &”#
自己修改一下试试
作者:
secondonsite
时间:
2006-6-16 05:39
高人啊!你的一点点建议拯救了我一天的迷茫,谢谢!
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3