Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-报表

[access报表]access报表打印中...如何设置报表...使之能根据内容多少...打印一张纸或半张纸...

时 间:2008-09-23 22:44:04
作 者:chenlugen   ID:2399  城市:东莞
摘 要:ACCESS报表打印中...如何设置报表...使之能根据内容多少...打印一张纸或半张纸...
正 文:

可以在报表主体格式化事件中写入以下类似的调整报表版面大小的代码:

================================================================================

Private Sub 主体_Format(Cancel As Integer, FormatCount As Integer)      '设置报表在不同情况下的格式
On Error Resume Next

If IsNull(Me.项目十四) = True Then

Me.项目十四.Top = 0
Me.项目十四.Visible = False
Me.项目十五.Top = 0
Me.项目十五.Visible = False
Me.项目十六.Top = 0
Me.项目十六.Visible = False
Me.项目十七.Top = 0
Me.项目十七.Visible = False
Me.项目十八.Top = 0
Me.项目十八.Visible = False
Me.项目十九.Top = 0
Me.项目十九.Visible = False
Me.项目二十.Top = 0
Me.项目二十.Visible = False

Me.结果十四.Top = 0
Me.结果十四.Visible = False
Me.结果十五.Top = 0
Me.结果十五.Visible = False
Me.结果十六.Top = 0
Me.结果十六.Visible = False
Me.结果十七.Top = 0
Me.结果十七.Visible = False
Me.结果十八.Top = 0
Me.结果十八.Visible = False
Me.结果十九.Top = 0
Me.结果十九.Visible = False
Me.结果二十.Top = 0
Me.结果二十.Visible = False

Me.单位十四.Top = 0
Me.单位十四.Visible = False
Me.单位十五.Top = 0
Me.单位十五.Visible = False
Me.单位十六.Top = 0
Me.单位十六.Visible = False
Me.单位十七.Top = 0
Me.单位十七.Visible = False
Me.单位十八.Top = 0
Me.单位十八.Visible = False
Me.单位十九.Top = 0
Me.单位十九.Visible = False
Me.单位二十.Top = 0
Me.单位二十.Visible = False

Me.参考范围十四.Top = 0
Me.参考范围十四.Visible = False
Me.参考范围十五.Top = 0
Me.参考范围十五.Visible = False
Me.参考范围十六.Top = 0
Me.参考范围十六.Visible = False
Me.参考范围十七.Top = 0
Me.参考范围十七.Visible = False
Me.参考范围十八.Top = 0
Me.参考范围十八.Visible = False
Me.参考范围十九.Top = 0
Me.参考范围十九.Visible = False
Me.参考范围二十.Top = 0
Me.参考范围二十.Visible = False

Me.说明十四.Top = 0
Me.说明十四.Visible = False
Me.说明十五.Top = 0
Me.说明十五.Visible = False
Me.说明十六.Top = 0
Me.说明十六.Visible = False
Me.说明十七.Top = 0
Me.说明十七.Visible = False
Me.说明十八.Top = 0
Me.说明十八.Visible = False
Me.说明十九.Top = 0
Me.说明十九.Visible = False
Me.说明二十.Top = 0
Me.说明二十.Visible = False

Label265.Top = 7347
Line264.Top = 7287
Label23.Top = 6997
Me.备注.Top = 6997
Label266.Top = 6997
Label267.Top = 6997
Line268.Top = 6917
Me.主体.Height = 7653

End If

End Sub


==============================================================================

以上代码是从一张纸格式,,,根据项目十四是否为空来进行调整为半张纸格式的,,,,是版面的缩小,,,,

红色的代码是比较要化精力调整的,,,那是报表尾部的一些东东,,,,不用我说,,,聪明的你,,,可以想到的,,,,

假如要用在批量打印中,,,还得在报表记录源(一般来源于查询)中对其按项目十四的降序进行排序(也不一定都是降序,,,不过在这是降序),,,,,,打印是从一张纸的开始打印,,,打印完一张纸的,,,再打印半张纸的,,,,

因报表设置的是对版面进行缩小的调整,,,,

若不对报表记录源进行排序的话,,,若先碰到半张纸的记录,,,它先对版面进行了缩小,,,后面一张纸的记录,,,没有相应版面扩大的设置,,,是以就不能正确打印了,,,仔细想想就会明白的,,,,



Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助