Access VBA 关于日期问题的求助

zy5070 2011-05-16 01:26:38
小弟正在学习ACCESS VBA,现在碰到一个问题,首先解释一下我用的是ACCESS 2010英文版,我在ACCESS FORM里面定义了一个combo box(从controls里面选的那个),它的lable: PlacementDate,然后unbound用的是SQL的query输出得到一个list。这样做的目的是让用户自己选择日期从而得到一个REPORT。部分CODE如下。

问题是ACCESS不能最终得到这个REPORT,有人说是因为日期的格式不对,也有人说是因为ACCESS认为我输入的是字符串而不是日期,所以没有输出,不知道是不是这个CODE有问题。同样的情况,我用ORDERID就可以,就是那个日期不行。请高手解答。

Dim strReport As String
Private Sub CmdPreviewRpt_Click()
Dim strSQL As String
Dim strWhere As String
Dim ctl As Control

On Error GoTo PrintError

If Not IsNull(cboPlacementDate) Then
strWhere = strWhere & " And [PlacementDate] = " & "'" & cboPlacementDate & "'"
End If

If Not IsNull(cboOrderID) Then
strWhere = strWhere & " And [OrderID] = " & "'" & cboOrderID & "'"
End If

If Not IsNull(strWhere) Then
strSQL = Mid$(strWhere, 6)
End If


DoCmd.OpenReport strReport, acViewPreview, , strSQL
...全文
134 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
那得看你commandbutton里写的代码是否是根据orderid来执行的,如果是的话,取不到orderid就生成不出你要的数据了。

If Not IsNull(cboPlacementDate) Then
strWhere = strWhere & " And [ORDERID] = " & "'" & cboPlacementDate & "'"
End If

说实话,真的很难懂,只能猜,呵呵
zy5070 2011-05-16
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 choasrules 的回复:]
#2011-05-16#

如果能将上一贴结了的话,会有人愿意回答你问题的,呵呵。
[/Quote]
不好意思,上次的结了,刚来这个网站不久,还不熟悉。有一点我想说明一下,我本来用的是

If Not IsNull(cboPlacementDate) Then
strWhere = strWhere & " And [ORDERID] = " & "'" & cboPlacementDate & "'"
End If

就是用SQL生成了一个ORDERID对应一个PLACEMENTDATE,然后,我发现,我同一个PLACEMENTDATE中有两个ORDERID,比如:11/01/2001 0001,11/01/2001 0002,这样做就会在那个COMBO BOX中出现了两个11/01/2001,这样做是可以做出最后的REPORT的(按CLICK CMD后),但是我觉得不好看,我把PLACEMENTDATE GROUP了,GROUP的时候,我没有选择ORDERID,这样就不行了,按了CMD后就没有反映。
SQL 如下:

第一个QUERY做了之后可以生成报告,但是日期重复出现在了COMBO BOX里。
Select OrderID,PlacementDate
From Order
Sort by OrderID
第二个QUERY做了之后无反映,虽然日期在COMBO BOX里不出现重复了。
Select PlacementDate
From Order
Group by PlacementDate

不知道高手能明白我的意思伐

  • 打赏
  • 举报
回复
#2011-05-16#

如果能将上一贴结了的话,会有人愿意回答你问题的,呵呵。
ChiShiDouNan 2011-05-16
  • 打赏
  • 举报
回复
拍马屁没用
[Quote=引用 4 楼 zy5070 的回复:]
[Quote=引用 3 楼 chishidounan 的回复:]
这不能告诉你,俺又不想要分

果然是高手啊,深藏不露
[/Quote]
zy5070 2011-05-16
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 chishidounan 的回复:]
这不能告诉你,俺又不想要分

果然是高手啊,深藏不露
ChiShiDouNan 2011-05-16
  • 打赏
  • 举报
回复
这不能告诉你,俺又不想要分

[Quote=引用 2 楼 zy5070 的回复:]
怎么整啊?
[/Quote]
zy5070 2011-05-16
  • 打赏
  • 举报
回复
怎么整啊?
ChiShiDouNan 2011-05-16
  • 打赏
  • 举报
回复
这个我知道

2,463

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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