设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
楼主: tmtony
打印 上一主题 下一主题

[报表] 汇出报表到PDF(含源代码 在各版主基础上改进)

[复制链接]
1#
发表于 2007-12-12 22:40:27 | 显示全部楼层
真不知怎么感谢各位版主,我只是一个普通的ACCESS爱好者,到困难时得到了这么多帮助!!!
报表转换成pdf的问题困绕了我很久,今天彻底得到了解决!!

再次对各位版主,各位热心网友,office中国表示最真挚的感谢!!!
2#
发表于 2007-12-13 14:47:30 | 显示全部楼层
版主,我在用时发现了这么个问题:
在批量导出不同报表时,比如
blRet = ConvertReportToPDF("报表1", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
blRet = ConvertReportToPDF("报表2", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
blRet = ConvertReportToPDF("报表3", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
时正确,都能导出。
但是当我反复导出报表1(每一次导出时,报表1的数据源的内容都不同)
比如每一次导出报表1,此时报表1是针对一班的成绩
比如每二次导出报表1,此时报表1是针对二班的成绩
比如每三次导出报表1,此时报表1是针对三班的成绩
代码如下:
。。。。为报表1的数据源改为1班成绩的vba代码,此处省略
blRet = ConvertReportToPDF("报表1", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
。。。。为报表1的数据源改为2班成绩的vba代码,此处省略
blRet = ConvertReportToPDF("报表1", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
。。。。为报表1的数据源改为3班成绩的vba代码,此处省略
blRet = ConvertReportToPDF("报表1", vbNullString, "uuu.pdf", False, True, 0, "", "", 0, 0)
后发现
生成的pd的三个f文件的内容都一样,都是一班成绩的数据(也即都为第一次导出时的内容)
反复调试后,我发现,每次在生成pdf前,程序都要将报表(或snp打开,我没细查),然后生成pdf,生成完后,程序并没将刚才打开的报表(或snp)关闭,一直到pdf生成完,在执行第二次ConvertReportToPDF时,就用的第一次没关闭的报表生成了pdf.

由于我只调用了modPdf 模块,估计在主窗体中有关闭报表的代码,但要在别的程序中嵌入这段代码的话,怎么实现
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-6 06:23 , Processed in 0.076779 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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