访问日期格式问题

时间:2018-11-08 18:55:14

标签: vba date ms-access format

我从DB2数据库中提取Access中的某些数据时遇到问题。 I查询工作正常,并在访问中创建表以导出到Excel。但是,我的日期显示为7位日期1181108,当导出到Excel时,格式显示为'181108。我已经尝试了所有我知道的方法来更改Access中日期的格式,以便它可以正确导出,但是我很茫然。将其从文本更改为短日期只能像9/1/5133中那样给我一个怪异的日期。我知道我在这里想念什么。我在VBA和Access上还很新,很高兴在此方面朝正确的方向发展。感谢您分享您的知识。

让我通过添加SQL语句来编辑我的问题:以下是我的查询。不知道在哪里插入日期格式部分。 'SQL'语句tp删除表中的数据

 rs.Open "SELECT ITEMBL.HOUSE, SLQNTY.LLOCN, ITMRVA.ITNBR, ITMRVA.ITDSC, SLQNTY.LQNTY, ITEMBL.MOHTQ, ITMRVA.ITCLS,ITEMBL.PLANIB,ITMRVA.ITTYP,SLQNTY.FDATE, ITEMBL.SCPDT,ITMRVA.UCDEF " _
         & " FROM AMFLIBG.ITEMBL ITEMBL, AMFLIBG.ITMRVA ITMRVA, AMFLIBG.ITMRVB ITMRVB, AMFLIBG.SLQNTY SLQNTY " _
         & " WHERE SLQNTY.HOUSE = ITEMBL.HOUSE And SLQNTY.ITNBR = ITEMBL.ITNBR And ITMRVB.ITNBR = ITMRVA.ITNBR And ITMRVB.ITRV = ITMRVA.ITRV And ITMRVB.STID = ITMRVA.STID " _
         & " AND SLQNTY.ITNBR = ITMRVA.ITNBR AND ((ITEMBL.HOUSE='CYP') AND (ITMRVA.STID='003') AND (ITMRVA.CFST='CUR') AND (SLQNTY.LLOCN ='ADJUST'))", CYP_AdjConn



'Loop through IBM data and for each record found, add it to the local table
Do Until rs.EOF
    rsLocal.AddNew
        rsLocal("Whs") = rs("HOUSE")
        rsLocal("Location") = rs("LLOCN")
        rsLocal("Item") = rs("ITNBR")
        rsLocal("Description") = rs("ITDSC")
        rsLocal("On-Hand") = rs("MOHTQ")
        rsLocal("On-Hand2") = rs("LQNTY")
        rsLocal("Default Cost") = rs("UCDEF")
        rsLocal("Class") = rs("ITCLS")
        rsLocal("Planner") = rs("PLANIB")
        rsLocal("I/T") = rs("ITTYP")
        rsLocal("FIFO") = rs("FDATE")
        rsLocal("Date of last scrap") = rs("SCPDT")
    rsLocal.Update
rs.MoveNext
Loop

1 个答案:

答案 0 :(得分:0)

似乎是文本日期。通过删除开头的1:

,在尝试导出到Excel之前将这些(在查询中)转换为真实的日期值。
TrueDate: DateSerial(Mid([TextField], 2, 2), Mid([TextField], 4, 2), Mid([TextField], 6, 2))

“ 1181108”-> 2018-11-08

如果该字段为“ SCSDT”,并且“上一报废日期”的数据类型为“日期”,则可能为:

If Val(rs("SCPDT")) = 0 Then
    rsLocal("Date of last scrap") = Null
Else
    rsLocal("Date of last scrap") = DateSerial(Mid(rs("SCPDT"), 2, 2), Mid(rs("SCPDT"), 4, 2), Mid(rs("SCPDT"), 6, 2))
相关问题