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

access 2007取消打印不包含任何记录的报表

时 间:2008-05-24 00:08:52
作 者:Microsoft   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:取消打印不包含任何记录的报表
正 文:

默认情况下,您可能打印不包含任何记录的报表。要解决此问题,您可以使用宏或 Microsoft Visual Basic for Applications (VBA) 代码来检测报表中如果没有记录,则取消打印操作。本文中的步骤介绍了如何使用这两种方法。


当报表不包含任何记录时,您可能希望取消打印该报表。例如,如果您刚开始销售一种新产品,可能有一段时间仍需要登记所有销售情况。因此,您应该考虑以下可能性:某些报表有可能不包含任何明细记录,聚合函数(如 Count 函数)可能没有要进行计数的信息。要适当处理此类情况,您可以创建一个取消打印作业的宏。也可以仔细地添加几行 VBA 代码来完成同一任务。VBA 是 Microsoft Office Access 2007 使用的编程语言。

可向报表的“无数据”事件过程中添加宏或 VBA 代码。只要运行没有任何记录的报表,Office Access 2007 就会触发“无数据”事件。当报表不包含任何数据时,本文中介绍的宏和 VBA 代码将显示相应的消息并取消打印该报表。向“无数据”事件过程中添加宏或 VBA 代码后,只要打开不包含任何记录的报表,该宏或 VBA 代码就会运行。单击“确定”关闭警告消息时,宏也会关闭空报表。向报表中添加宏或 VBA 代码后,当您尝试在报表视图或布局视图中显示空报表时,空报表不会打开,但您可以在设计视图中打开该报表。 

使用宏取消打印

当您尝试打印空报表时,本节中介绍的宏将显示一条警告消息。单击“确定”关闭消息框时,宏也会自动取消打印操作。如果没有包括警告消息,则当您尝试打印报表时,就好像没有发生任何事情一样,这种情况很可能把报表的用户弄糊涂。 

创建宏

  1. 在导航窗格中,右键单击要更改的报表,然后单击“设计视图”
  2. “设计”选项卡上的“工具”组中,单击“属性表”

    - 或 -

    双击报表左上角或右上角的框,具体取决于您的区域和语言设置。

  3. 单击“事件”选项卡,然后在“无数据”属性框中,单击 按钮图像

    将出现“选择生成器”对话框。

  4. 单击“宏生成器”,然后单击“确定”

    宏设计器将启动并显示一个空宏。

  5. 在宏的第一行中,单击“操作”列中的字段,然后从列表中选择“MsgBox”
  6. 在宏设计器下半部分的“操作参数”下,在“消息”框中键入警告消息的文本。

    例如,您可以输入以下消息:没有要报告的任何记录。

  7. 或者将“蜂鸣声”框中的参数值从“是”更改为“否”,然后在“类型”列表中,选择要在警告消息中出现的图标类型。
  8. “标题”框中,键入警告消息的标题。

    例如,您可以输入无记录

    您的更改将出现在宏设计器的上半部分,即“MsgBox”操作旁边的“参数”列中。 

  9. 在宏设计器的上半部分,单击“操作”列中的下一个单元格(紧跟在“MsgBox”下的单元格),然后选择“CancelEvent”

    您的宏应该如下所示,尽管您可以在参数中使用不同的文本:

    取消打印操作的示例宏

  10. “设计”选项卡上的“关闭”组中,单击“将对象另存为”,然后使用“另存为”对话框为宏指定名称。
  11. 关闭宏。如果出现警告消息,并且询问您是否要保存对宏和报表属性的更改,请单击“是”,然后继续下面的步骤对其进行测试。

测试宏

  • 在导航窗格中,右键单击包含该宏的报表,然后单击“打印”。根据您选择的选项,应出现一条与下面类似的警告消息:

    报表不包含任何记录时出现的消息框

    单击“确定”关闭消息时,CancelEvent 操作会停止打印操作。由于您没有指定其他任何事件(如打开报表进行查看),因此报表将关闭。

使用 VBA 代码取消打印

此处介绍的 VBA 代码的工作原理与上一节中

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


常见问答:

技术分类:

相关资源:

专栏作家

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