Office中国论坛/Access中国论坛

标题: 求一个按日期范围查询的代码,谢谢 [打印本页]

作者: huang1314    时间: 2012-9-28 23:11
标题: 求一个按日期范围查询的代码,谢谢
用子窗体显示查结果,以下代码按姓名查询,能查出正确的结果
Me.计件工资表查询子窗体.Form.Filter = "姓名='" & Text1 & "'"
Me.计件工资表查询子窗体.Form.FilterOn = True
Me.计件工资表查询子窗体!姓名.DefaultValue = "'" & Text1 & "'"

我想做一个按日期范围的查询,照上面查姓名的样式乱写一通,不能查出想的结果,请大家帮忙看看,谢谢
Me.计件工资表查询子窗体.Form.Filter = "日期>'" & Text9 & "'" And "日期<'" & Text10 & "'"
Me.计件工资表查询子窗体.Form.FilterOn = True
Me.计件工资表查询子窗体!日期.DefaultValue = "日期>'" & Text9 & "'" And "日期<'" & Text10 & "'"

我想查出日期大于Text9  且小于Text10的所有记录。
作者: Henry D. Sy    时间: 2012-9-29 10:49
Me.计件工资表查询子窗体.Form.Filter = "日期>#" & Text9 & "#" And "日期<#" & Text10 & "#"

作者: huang1314    时间: 2012-9-29 12:58
Henry D. Sy 发表于 2012-9-29 10:49
Me.计件工资表查询子窗体.Form.Filter = "日期>#" & Text9 & "#" And "日期

搞不定,请版主动手帮忙,谢谢
还有一个问题是删除记录前先复制该到另一个表中,也搞不定

附件如下
[attach]50468[/attach]
作者: aslxt    时间: 2012-9-29 14:12
Me.计件工资表查询子窗体.Form.Filter = "日期 between #" & Text9 & "#  And #" & Text10 & "#"
作者: Henry D. Sy    时间: 2012-9-29 14:45
huang1314 发表于 2012-9-29 12:58
搞不定,请版主动手帮忙,谢谢
还有一个问题是删除记录前先复制该到另一个表中,也搞不定

描述不清
作者: huang1314    时间: 2012-9-29 15:40
Henry D. Sy 发表于 2012-9-29 14:45
描述不清

还有一个问题是删除记录前先复制该记录到另一个表中,少了两个字,呵呵
作者: huang1314    时间: 2012-9-29 15:43
aslxt 发表于 2012-9-29 14:12
Me.计件工资表查询子窗体.Form.Filter = "日期 between #" & Text9 & "#  And #" & Text10 & "#"

谢谢,按日期查询可以了
还有一个问题是删除记录前先复制该记录到另一个表中,这个呢
作者: roych    时间: 2012-9-29 18:18
本帖最后由 roych 于 2012-9-29 18:27 编辑

这里只说明两点:
1、请保留临时查询,否则执行代码会出错。
2、这里仅限于删除/追加单条记录。考虑到删除/追加多条记录的代码可能较为复杂,这里暂略过。
[attach]50472[/attach]
作者: huang1314    时间: 2012-9-29 18:38
roych 发表于 2012-9-29 18:18
这里只说明两点:
1、请保留临时查询,否则执行代码会出错。
2、这里仅限于删除/追加单条记录。考虑到删除 ...

谢谢版主
就是我想要的效果,我不需要批量删除的,呵呵
作者: huang1314    时间: 2012-9-29 23:05
又有问题了。

下载的这个文件可以用,效果也是我需要的。但复制我的数据库用不了,qry_tem这个查询也保留下了,但里面没有记录,试了几次,只要qry_tem这个查询里有记录,就可以删除。是不是下面第3句把qry_tem这个查询的记录删除光了?
DoCmd.SetWarnings False
DoCmd.RunSQL "Insert Into 表1 select * from qry_tem"
DoCmd.RunSQL "delete * from qry_tem"
Me.计件工资表查询子窗体.Requery
作者: roych    时间: 2012-9-29 23:39
嗯。需要先在子窗体中选择记录,才会把记录放在查询里,然后才可以删除。详细请看子窗体的代码。里面有注释。
作者: layaman_999    时间: 2012-10-3 11:03
日期大于Text9  且小于Text10的所有记录
dim Dta as date, Dtb as date
dta = me.Text9+1 '大于Text9
dtb = me.Text10-1 '小于Text10
Me.计件工资表查询子窗体.Form.Filter ="日期 between #" &  dta  & "# and #" & dtb & "#"
Me.计件工资表查询子窗体.Form.Filteron = true




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3