分享

Excel VBA中读取Access数据库表时只取日期的办法

 aksufyy 2013-04-26

问题描述:Access数据库的表中的日期为“日期/时间”的类型。如何只取用日期呢?

解决办法:在Excel VBA中使用SQL 查询语句时,如果是查询SQL数据的“日期/时间”和时间,则可以使用left(checktime,10)  说明:checktime为一个表中的一 个字段,类型为“日期/时间”。FormatDateTime在Excel2010中使用完全没有问题,但在Excel2007中提 示:FormatDateTime函数未定义
改用Format(date(), "yyyy-mm-dd") 后,正常使用。

 

Excel 2007 和Excel2010 的VBA中可以使用的SQL查询语句:我取了其中的两句(sdate为开始日期变量,edate为结束日期变量)

" (Format(checktime,""yyyy/m/d"") >= #" & sdate & "# and " & _
    " Format(checktime,""yyyy/m/d"") <= #" & edate & "#)" & _

 

说明:如果语句不能执行,需要把"更改为chr(43)

" (Format(checktime," & Chr(34) & "yyyy/m/d" & Chr(34) & ") >= #" & sdate & "# and " & _
           " Format(checktime," & Chr(34) & "yyyy/m/d" & Chr(34) & ") <= #" & edate & "#) and " & _

 

Excel2010 的VBA中可以使用的SQL查询语句:我取了其中的两句

    " (FormatDateTime(checktime,2)>= #" & sdate & "# and " & _
    " FormatDateTime(checktime,2)<= #" & edate & "#)" & _

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多