在 Excel 中关闭工作簿时提示 "如何禁止保存更改" 提示

注意: 我们希望能够尽快以你的语言为你提供最新的帮助内容。 本页面是自动翻译的,可能包含语法错误或不准确之处。 我们的目的是使此内容能对你有所帮助。 可以在本页面底部告诉我们此信息是否对你有帮助吗? 请在此处查看本文的英文版本以便参考。

摘要

在 Microsoft Excel 中, 你可以创建 microsoft Visual Basic for Applications (VBA) 宏, 该宏取消关闭工作簿时的 "保存更改" 提示。 这可以通过指定工作簿的已保存属性的状态, 或禁止工作簿的所有通知来完成。

详细信息

提示Microsoft 提供的编程示例仅用于说明, 没有任何明示或默示的保证。 这包括但不限于对适销性或特定用途适用性的默示担保。 本文假定你熟悉所演示的编程语言, 以及用于创建和调试过程的工具。 Microsoft 支持工程师可帮助解释特定过程的功能。 但是, 它们不会修改这些示例以提供额外的功能或构建过程来满足你的特定要求。 

若要准备实施下列任一示例, 请先执行以下步骤:

  1. 启动 Excel 并打开一个新工作簿。

  2. 按 ALT + F11 启动 Visual Basic 编辑器。

  3. 在 "插入" 菜单上, 单击 "模块"。

  4. 在模块工作表中键入示例宏代码。

  5. 按 ALT + F11 返回到 Excel。

  6. 在 Microsoft Office Excel 2003 和早期版本的 excel 中, 从 "工具" 菜单中选择 "", 然后单击 ""。

    在 Microsoft Office Excel 2007 中, 在 "开发工具" 选项卡上的 "代码" 组中单击 ""。 

    如果 "开发工具" 选项卡不可用, 请考虑

    执行以下操作:     有. 单击 " Microsoft Office按钮", 然后单击 " Excel 选项"。

    a. 在 "常用" 类别中, 在 "使用Excel 时使用的最佳选项" 下, 单击以选中 "显示
    "         "开发工具" 选项卡在 "功能区"
    复选框中, 然后单击"确定"

  7. 选择所需的宏, 然后单击 "运行"。

如果自上次保存后对工作簿进行了更改, 则已保存的属性将返回值False

你可以使用保留的子例程名称Auto_Close指定在关闭工作簿时应运行的宏。 在此过程中, 你可以控制当用户在 Excel 中关闭文档时如何处理文档。
 

示例 1: 关闭工作簿, 但不保存更改

若要强制关闭工作簿而不保存任何更改, 请在该工作簿的 Visual Basic 模块中键入以下代码:
 

    Sub Auto_Close ()

        工作簿 = True

    End Sub

已保存的属性设置为True时, Excel 将做出响应, 如同工作簿已保存, 并且自上次保存以来没有发生任何更改。


该程序的DisplayAlerts属性可用于相同用途。 例如, 以下宏将关闭DisplayAlerts , 关闭活动工作簿而不保存更改, 然后再次打开DisplayAlerts
 

    Sub CloseBook ()

        DisplayAlerts = False

        ActiveWorkbook。关闭

        DisplayAlerts = True

    End Sub

你还可以使用Close方法的SaveChanges参数。

以下宏将关闭工作簿, 但不保存更改:
 

    Sub CloseBook2()

        ActiveWorkbook.Close savechanges:=False

    End Sub

示例 2: 关闭工作簿并保存更改

若要强制工作簿保存更改, 请在该工作簿的 Visual Basic 模块中键入以下代码:
 

    Sub Auto_Close ()

        如果工作簿 = False, 则

            工作簿保存结束 If

    End Sub

此 sub 过程检查 "文件已保存" 属性是否已设置为 " False"。 如果是这样, 则工作簿自上次保存后已更改, 并且保存这些更改。

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×