布伦达经常同时打开多个工作簿。

她将在一本工作簿中进行一些更改,然后开始编辑另一本。撤消堆栈似乎适用于所有工作簿,但是当她处理任何给定的工作簿时,她只想撤消在特定工作簿中所做的事情。 Brenda想知道Excel是否有办法为每个工作簿保留单独的撤消堆栈。

这是肯定的答案。 “否”部分是您无法在任何给定的Excel实例中执行此操作。如果您打开了多个工作簿,则由于您可能已经创建了跨工作簿引用,因此撤消堆栈可在所有工作簿上使用。在这种情况下,您希望撤消堆栈在工作簿之间起作用。

至于“是”部分,有两种方法可以解决此问题。

首先,假设您有五个工作簿处于打开状态,并且已经对其进行了编辑。但是,您只想撤消其中一个工作簿中的工作。此时,您可以关闭其他四个工作簿。现在,您可以使用撤消堆栈,它将仅影响剩下的一个打开的工作簿。您关闭的那些文件不会受到影响。然后,您可以稍后重新打开以前关闭的工作簿。

第二种方法与打开和使用工作簿的方式有关。通常,打开工作簿可在任何现有的Excel实例中打开它。但是,如果您在单独的Excel实例中打开工作簿,则一个实例中的工作簿将被“隔离”(可以这么说)

从其他情况。这与Windows如何为Excel等应用程序分配内存有关。

打开Excel新实例的传统方法是确保每次使用新实例时都使用“开始”菜单(在Windows中)启动Excel。 (换句话说,不要双击工作簿,也不要在Excel本身内使用“打开”命令。)您还可以通过在启动Excel时按住Alt键来创建新实例。这将导致程序询问您是否要启动新的Excel会话。

直接的好处是您将有单独的撤消堆栈,每个启动的Excel实例一个。此方法中的一个潜在故障是,如果有一些在Excel启动时自动打开的工作簿(例如保存您的公共宏的“个人”工作簿),则在启动新的Excel实例时您可能会看到警告或错误消息。在大多数情况下,这不会造成任何问题-至少与Personal.xls无关。当您将信息从一个Excel实例复制到另一个Excel实例时,您可能还会注意到其他行为差异。

最重要的是,这将需要您进行一些测试。这样做时,您可能会发现使用多个Excel实例固有的缺点会抵消拥有单独的撤消堆栈的好处。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(2082)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。