| 网站首页 | 新闻 | 新书 | 专家 | 技巧 | 源码作品 | 工具/资源 | 商城 | 风采 | 留言 | 论坛 | 网址 | 承接 | 
您现在的位置: Access/Office中国 >> 技巧 >> Access >> 报表打印 >> 文章正文 用户登录 新用户注册
在 Access 2002 中更改报表的打印机设置         
在 Access 2002 中更改报表的打印机设置
作者:Office 协… 文章来源:Office 协助中心 点击数: 本日:{$DayHits} 更新时间:2003-12-20 22:32:08
创建“打印机设置”窗体
在“设计”视图中创建一个窗体,并如上图所示添加下列控件。
lbxSelectReport:显示报表列表的列表框
cmbPrinter:显示可用打印机列表的组合框
cmbPaperSize:显示纸张大小列表的组合框
opgOrientation:具有两个选项的选项组,用于显示方向选项
cmdPreview:以预览模式打开报表的命令按钮
cmdApplyChanges:将最新设置应用到当前报表的命令按钮
cmdPrint:使用在窗体中指定的设置打印选定报表的命令按钮
向窗体的 Open 事件中添加代码以初始化控件。
Open 事件子过程示例

Private Sub Form_Open(Cancel As Integer)
' 包含默认打印机索引的变量。
Dim strDefaultPrinter As String
' 包含打印机对象的变量。
Dim prt As Printer
' 在 AllReports 集合中遍历时
' 包含报表对象的变量。
Dim accObj As accessObject
' 填写打印机列表。
' 确保 RowSource 为空。
Me!cmbPrinter.RowSource = ""
Me!lbxSelectReport.RowSource = ""
' 遍历计算机上已安装的打印机,并将它们添加到组合框中。
For Each prt In Application.Printers
' 使用新的 AddItem 方法将打印机名称添加到组合框中。
Me!cmbPrinter.AddItem prt.DeviceName
Next
' 记忆默认打印机。
strDefaultPrinter = Application.Printer.DeviceName
' 将组合框设置为默认打印机。
Me!cmbPrinter = strDefaultPrinter
Me!cmbPaperSize = 1
' 填写报表列表。
For Each accObj In CurrentProject.AllReports
Me!lbxSelectReport.AddItem accObj.Name
Next
' 将列表框设置为第一个报表。
Me!lbxSelectReport.SetFocus
Me!lbxSelectReport.ListIndex = 0
End Sub
向“预览报表”命令按钮添加代码,以便以预览模式打开选定的报表。
“预览报表”命令按钮的 onClick 事件过程示例

Private Sub cmdPreview_Click()
' 包含要操纵的打印机对象的变量。
Dim prt As Printer
' 为选定的打印机选取打印机对象。
Set prt = Application.Printers(Me!cmbPrinter.Value)
' 读取用户指定的设置。
prt.PaperSize = Me!cmbPaperSize
prt.Orientation = Me!opgOrientation
' 以预览模式打开报表。
DoCmd.OpenReport Me!lbxSelectReport, acViewPreview
' 将报表的打印机设置为已修改的打印机对象。
Reports(Me!lbxSelectReport).Printer = prt
End Sub
向“应用更改”命令按钮添加代码,以将更改应用到以预览模式打开的报表。
“应用更改”命令按钮的 onClick 事件过程示例

Private Sub cmdApplyChanges_Click()
If CurrentProject.AllReports(Me!lbxSelectReport).IsLoaded Then
With Reports(Me!lbxSelectReport).Printer
.PaperSize = Me!cmbPaperSize
.Orientation = Me!opgOrientation
End With
Else
MsgBox "请先预览报表。"
End If
End Sub
向“打印报表”命令按钮添加代码,以便基于用户指定的设置打印选定的报表。
“打印报表”命令按钮的 onClick 事件过程示例

Private Sub cmdPrint_Click()
' 检查报表是否已打开。
If CurrentProject.AllReports(Me!lbxSelectReport).IsLoaded Then
' 打印报表(如果已打开)。
DoCmd.OpenReport Me!lbxSelectReport, acViewNormal
Else
' 使用自定义设置来设置应用程序打印机。
Application.Printer = Application.Printers(Me!cmbPrinter.Value)
Application.Printer.PaperSize = Me!cmbPaperSize
Application.Printer.Orientation = Me!opgOrientation
' 使用新的应用程序级别打印机设置来打开和打印报表。
DoCmd.OpenReport Me!lbxSelectReport, acViewNormal
' 将应用程序打印机重置为默认设置。
Set Application.Printer = Nothing
End If
End Sub

文章录入:tmtony    责任编辑:tmtony 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    专 题 栏 目
    最 新 热 门
    最 新 推 荐
    相 关 文 章
    [原创]在 Access 2000中
    在Access报表中实现圆角
    如何将RECORDSET的结果集
    如何更改表的字段名
    ADP中如何用代码设置窗体
    如何用VBA更改数据库密码
    移除报表预览窗口的Min/
    在VB中用代码打印ACCESS
    修改(破解)MDE(ADE)报表
    根据文本框内数据更改显
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)