【问题标题】:How to disable/re-enable macros in Excel?如何在 Excel 中禁用/重新启用宏?
【发布时间】:2012-11-28 06:17:08
【问题描述】:

我一直在 Excel 文档上使用宏,它可以放大任何工作表中的图表。问题是,如果我想编辑一个图表,我必须点击它,触发缩放。

出于这个特殊原因,我需要禁用宏,并且想知道是否有一个易于访问的按钮或键盘快捷键来切换它。

【问题讨论】:

  • 宏是通过打开工作表触发的,还是有其他活动触发?
  • 在 XL 文件中,按Alt+F11。转到ThisWorkbook 模块并注释掉两个子目录中的两行。保存并关闭文件,然后重新打开。然后,您可以编辑您心中的内容。要重新打开缩放器,请取消注释行。您可能需要再次保存、关闭并重新打开。
  • @ScottHoltzman - 请在上面发表评论作为答案,以便您获得适当的信用
  • 一点补充:取消注释代码并保存不会立即完全起作用,但您仍然不需要重新打开整个工作簿:只需更改工作表即可开始工作( Ctrl+Pg 向上/dn)
  • 已添加答案。也感谢 cmets 帮助加深答案。

标签: vba excel visual-studio-macros


【解决方案1】:

从 Excel 2010* 开始,“开发人员”选项卡上实际上有一个选项,可让您像 ABC 一样简单地禁用宏。 Design Mode lets you do just that!

*甚至更早的版本。

【讨论】:

    【解决方案2】:

    在 XL 文件中:

    1) 按Alt+F11

    2) 转到 ThisWorkbook 模块并注释掉两个 subs 中的两行。

    3) 保存并关闭文件,然后重新打开。

    4) 然后您可以编辑您心中的内容。

    5) 要重新打开缩放器,请取消注释行。您可能需要再次保存、关闭并重新打开

    NB -> 请参阅原始帖子中的 cmets 了解更多信息。

    【讨论】:

      【解决方案3】:

      如果您想要更多的控制权而不必经常评论/取消对宏的评论,您可以在宏中添加类似这样的内容。确保将其放在顶部,在任何其他代码之前:

      Dim mb As VbMsgBoxResult    'Declare a variable to hold the messagebox result
      'Prompt the user:
      mb = MsgBox("Would you like to edit this chart?", vbYesNo, "Edit Chart?")
      If mb = vbYes Then
          Exit Sub   'If user wants to edit the chart, then exit this subroutine
          'a response of "No" will allow the sub to continue uninterrupted
      End If
      

      如果无法确切了解宏是如何被调用的,这可能需要进行一些调整,但是 它本质上只是一个提示,询问您是否希望宏(缩放)继续,或者您是否希望它终止,允许您访问图表对象进行编辑。

      【讨论】:

      • 这是一个很好的观点,但即使您的选择比评论需要更少的步骤,我担心每次我想编辑/缩放图表时都必须这样做会很快加起来并变得很麻烦.也许提示编辑切换变量会起作用,但我目前对这种方法很满意:)
      • @ravemir 你是对的,显然你可以微调这种方法。实际上,我会将 msgbox 提示添加到 Workbook_Open 事件中,然后将结果传递给缩放宏,添加一行代码,如If mb = vbYes Then Exit Sub。这将让您确定您是否只想在打开文件时编辑图表一次,然后忽略“缩放”过程。
      • 我更多地考虑使用快捷方式触发提示,它编辑全局变量。这将是理想的,因为我将在本书中添加大量工作表,并在其间缩放和编辑其图表。
      • 是的,给这只猫剥皮的方法不止一种,最适合您的解决方案将是最能说明如何您使用文件的方法。
      猜你喜欢
      • 2022-09-23
      • 2019-11-25
      • 2015-12-28
      • 1970-01-01
      • 2022-09-24
      • 2021-07-20
      • 1970-01-01
      • 2022-08-02
      • 2023-01-12
      相关资源
      最近更新 更多