你目前正处于脱机状态,正在等待 Internet 重新连接

当分页符在 Excel 中可见时,宏性能会降低

注意:这篇文章是由无人工介入的微软自动的机器翻译软件翻译完成。微软很高兴能同时提供给您由人工翻译的和由机器翻译的文章, 以使您能使用您的语言访问所有的知识库文章。然而由机器翻译的文章并不总是完美的。它可能存在词汇,语法或文法的问题,就像是一个外国人在说中文时总是可能犯这样的错误。虽然我们经常升级机器翻译软件以提高翻译质量,但是我们不保证机器翻译的正确度,也不对由于内容的误译或者客户对它的错误使用所引起的任何直接的, 或间接的可能的问题负责。

点击这里察看该文章的英文版: 199505
为这篇文章的一个 Microsoft Excel 97 版本,请参阅 145598
症状
在更高版本的 Excel 中运行一个 Microsoft Visual Basic 应用程序 (VBA) 宏时, 可能要花更长的时间来完成比它在早期版本的 Excel 宏。例如对于需要几秒钟才能完成在早期版本的 Excel 中的宏可能需要几分钟的时间才能完成在更高版本的 Excel 中。

此外,如果第二次运行宏,该宏可能会花两次运行第一次一样。
原因
如果满足下列条件,则可能会出现此问题:
  • VBA 宏将修改多行或列的属性。
  • 您已执行强制 Excel 计算分页符的操作。当您执行下列操作之一时,Excel 将计算分页符:
    • 显示工作表的打印预览。
    • 在 Microsoft Office Excel 2003 和早期版本的 Excel 中,您单击 页面设置文件 菜单上。

      在 Microsoft Office Excel 2007 年单击快速访问工具栏上的 页面设置

      注意您可能需要手动添加到工具栏上的此选项。
    • 您可以修改任何中 VBA 宏 PageSetup 对象的属性。
  • 在 Excel 2003 和早期版本的 Excel 中,您可以选择在 选项 对话框的 视图 选项卡上的 分页符 复选框。

    在 Excel 2007 中单击 Microsoft Office 按钮、 单击 Excel 选项,单击 高级 类别,然后单击以选中 显示此工作表的选项 部分下的 显示分页符 复选框。
如果您的宏将任何 PageSetup 属性设置,或者如果在手动设置一个 PageSetup 属性,然后运行一个大范围的行或列上设置属性的 VBA 宏,则会出现此问题。

当您设置 PageSetup 属性时,在 Excel 中启用自动计算分页符。默认状态下,未设置此属性。
替代方法
要变通解决此问题,请使用下列方法之一。

方法 1: 手动禁用页分页符显示

若要执行此操作在 Excel 2003 和早期版本的 Excel 中,请按照下列步骤操作:
  1. 工具 菜单上,单击 选项
  2. 单击 视图 选项卡。在 窗口选项,下单击以清除 分页符 复选框。单击 确定
为此请在 Excel 2007 中,请按照下列步骤操作:
  1. 单击 Microsoft Office 按钮,然后单击 Excel 选项
  2. 单击 高级 类别,然后单击以清除在 此工作表的显示选项 部分下的 显示分页符 复选框。

方法 2: 以编程方式禁用页分页符显示

Microsoft 提供的编程示例只,用于说明不附带任何明示或暗示保证。这包括,但不限于对适销性或针对特定用途的适用性的暗示的担保。本文假定您熟悉演示了正在使用的编程语言以及用于创建和调试过程的工具。Microsoft 支持工程师可以帮助解释某个特定过程的功能,但他们不会修改这些示例以提供额外的功能或构建过程来满足您的具体要求。

若要以编程方式禁用页分页符显示,请将下面的代码行添加到 VBA 宏
ActiveSheet.DisplayPageBreaks = False				
要点 修改任何 PageSetup 对象的属性后,但在您修改您的工作表上的属性或行之前,您必须插入这行代码。
XL2000 xl2002 XL2003 XL2007

属性

文章 ID:199505 - 上次审阅时间:01/23/2007 22:14:18 - 修订版本: 5.1

Microsoft Office Excel 2007, Microsoft Office Excel 2003, Microsoft Excel 2002 标准版, Microsoft Excel 2000 标准版

  • kbmt kbdtacode kbprb kbprint KB199505 KbMtzh
反馈