设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 650|回复: 12
打印 上一主题 下一主题

打印凭证号范围

[复制链接]
跳转到指定楼层
1#
发表于 2002-10-27 00:44:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
怎样实现报表按输入凭证号的范围,分别打印出各张凭证[em18][em06][em18]


[此贴子已经被作者于2002-10-26 16:43:38编辑过]

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2002-10-27 04:18:00 | 只看该作者
请各位高手帮帮忙呀,小弟不胜感激!谢谢谢谢!
3#
发表于 2002-10-27 05:42:00 | 只看该作者
Private Sub cmdC_Click()
'建立两个文本框 txtA ,txtB ,建立一个按钮 cmdC
'建立一个表 tbla ,建立查询 queA,建立报表 rpt1
'假定凭证编号为数字,并且输入到 txtA中为数字开始,txtb为数字结束,而表中存储的凭证编号为 "001"  "009" 这样的格式
'假定报表的数据源是quea

Dim i As Long
For i = txta.Value To txtb.Value

Dim vieA As ADOX.View
Dim cat As New ADOX.Catalog
Dim cmdA As ADODB.Command
Set cat.ActiveConnection = CurrentProject.Connection

Set cmdA = cat.Procedures("QueA").Command

cmdA.CommandText = "select * from tbla where (field1='" & Format(i, "000") & "')"

Set cat.Procedures("queA").Command = cmdA
DoCmd.OpenReport "Rpt1", acViewNormal
Next

End Sub
'必须引用ado,adox,这我就不必教你了吧?
'以上代码应该没有错误的(这回我可是连大小写都给你写明白了),98%品质保证,哈哈


[此贴子已经被作者于2002-10-26 21:42:25编辑过]

4#
发表于 2002-10-27 05:49:00 | 只看该作者
另外,再跟你说的是上述代码分别打印9张报表,还有一种方法,你把一张凭证撑足一页,然后把9条记录都作为数据源 select * from tbla where(field1>='" & Format(txta, "000") & "' and field1<='" & format(txtb,"000") &"') 即可一次打印9页,速度也快点
5#
发表于 2002-10-27 05:50:00 | 只看该作者
我晕,各位,你们看,真不公平诶,他就写了一行,我 TM 要写这么多。。。。。。
6#
 楼主| 发表于 2002-10-27 05:55:00 | 只看该作者
cmdA是什么?
7#
发表于 2002-10-27 06:06:00 | 只看该作者
cmdA就是 command对象

原来dao只要一句 querydef.sql="select * from aaa",现在改ADO,麻烦死了

是谁还说 ADO 简单的??????!!!!!!!!!!!!

我怎么看 ADO 都比 DAO 麻烦!!!!!!!!!!!


[此贴子已经被作者于2002-10-26 22:06:00编辑过]

8#
 楼主| 发表于 2002-10-27 06:06:00 | 只看该作者

不好意思

Private Sub Command5_Click()
'建立两个文本框 打印凭证开始号 ,打印凭证结束号 ,建立一个按钮 Command5
'建立一个表 tbla ,建立查询 queA,建立报表 rpt1
'假定凭证编号为数字,并且输入到 打印凭证开始号中为数字开始,打印凭证结束号为数字结束,而表中存储的凭证编号为 "001" "009" 这样的格式
'假定报表的数据源是quea

Dim i As Long
For i = 打印凭证开始号.Value To 打印凭证结束号.Value

Dim vieA As ADOX.View
Dim cat As New ADOX.Catalog
Dim cmdA As ADODB.Command
Set cat.ActiveConnection = CurrentProject.Connection

Set cmdA = cat.Procedures("计件工资单查询").Command

cmdA.CommandText = "select * from 计件工资单 where (field1='')"

Set cat.Procedures("计件工资单查询").Command = cmdA
DoCmd.OpenReport "计件工资单", acViewNormal
Next

End Sub
我的凭证号字段名称为"编号“,其格式为:1,9
我实在是看不懂你的代码,请再帮帮忙好吗!
                     [em09][em09][em09][em12][em03][em03]
9#
发表于 2002-10-27 06:08:00 | 只看该作者
1,9?什么意思?是数字还是文本?
10#
 楼主| 发表于 2002-10-27 06:09:00 | 只看该作者
是数字,我的凭证号是自动编号的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-15 18:31 , Processed in 0.107544 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表