设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[报表] 批量打印引用有条件查询的报表

[复制链接]
跳转到指定楼层
1#
发表于 2010-10-25 15:16:13 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
报表是引用的是一个查询,该查询是有字段条件的。比如查询是员工信息,报表已经设计成每个员工的信息(单独的,页眉等已经设计好了),启动报表时要求输入员工姓名,但每次只能打一张。如果同时打多个员工的信息如何做呢?我可以做一个表放入我要打印的员工姓名,但如何运用宏去做呢?如果不行,是不是必须要重新设计一个批量查询和报表?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2010-10-25 16:07:54 | 只看该作者
二个方法供你参考:
1,根据你的名单循环改变报表的数据源
2,做一个查询包含你的名单,然后报表做成按名单分组报表
3#
 楼主| 发表于 2010-10-26 08:47:14 | 只看该作者
谢谢,我就是不知道如何在语句上循环运用.我尝试在宏上做,但我一次都不会引用.因为会跳出对话框要求输入员工工号.我就不知道怎么做了.
我知道思路,就是不知道如何做.
前辈帮忙.
4#
发表于 2010-10-26 15:59:36 | 只看该作者
麻烦你上传个附件吧,空手道讲不清楚。
5#
 楼主| 发表于 2010-10-27 21:46:14 | 只看该作者
比如:(报表:人员打印表)是每人一张,报表我不想修改。
报表所引用的查询(人员查询)我也不想修改。
在(表:人员打印)里面放入我要打印的人员的编号,然后用宏或VBA一次性打印出来。
我现在是点一下报表,输入一个号码,然后打印,再点一下报表,在输入另一个号码。。。。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2010-10-28 12:27:19 | 只看该作者
回复 阿松 的帖子

下面的示例给出二种方法,其中第二种方法为了让你看的清楚,在每张报表之间设置了5秒钟的延时。在实际操作中是没有必要的。(示例中是报表预览方式打开,在实际操作中直接打印就可以了。)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
7#
 楼主| 发表于 2010-10-28 21:20:52 | 只看该作者
谢谢您,我明天到公司里试一下.
我把窗体中的行来源改成(表:人员打印),因为我不需要打印每个人员,只打印我需要打印的人员.您的我修改的我都会试一下.再高手您我的结果.
8#
发表于 2010-10-29 00:20:18 | 只看该作者
非常感谢
9#
发表于 2010-10-29 07:19:29 | 只看该作者
阿松 发表于 2010-10-28 21:20
谢谢您,我明天到公司里试一下.
我把窗体中的行来源改成(表:人员打印),因为我不需要打印每个人员,只打印我需 ...

你需要打印哪几个人员,就先在列表中选中那几个人,然后打印就可以了。
10#
 楼主| 发表于 2010-10-29 21:21:05 | 只看该作者
我尝试把下面那段代码
For Each vItem In Me.List1.ItemsSelected
改成引用"人员打印"表,但一直没有成功.不知道如何写.自己都觉得自己太菜了.
因为我实际是从其他地方把大量数据拷贝到表里面再打印,一个个点太费时.而且容易错.就是把窗体的行来源改成"人员打印"表,也还是要点.
还有一点我不明白:循环是For Each .... Next 但DoCmd是在外面,为什么会打好几页呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-18 06:55 , Processed in 0.102464 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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