Excel 公式意外重新计算

Excel 公式意外重新计算

有人向我发送了一个电子表格(作为电子邮件附件),其中简单的总和公式尚未重新计算,因为当我从 Outlook 打开电子邮件时,它会在受保护的视图中的 Excel 2010 中打开,我可以看到单元格值是错误的。

但是当我启用编辑时,公式会重新计算并显示正确的单元格值。我的问题是 - 他们如何设法向我发送一个电子邮件附件,其中的公式没有重新计算,但当我打开它时它会重新计算?如果他们在发送时在电子表格中设置了手动重新计算,那么当我打开它时它是否仍然是手动的而不是重新计算?

有什么想法吗?

答案1

Excel 选项中(至少 2007 年是这样的,我希望 2010 年也类似)有以下部分:

在此处输入图片描述

他们完全有可能进入选项并将 Excel 设置为手动重新计算。这是我能想到的最有可能导致您看到的情况。

-=编辑=-

或者可能不是,该设置似乎是按工作簿保存的,至少在 2007 年是这样,也许他们在 2010 年进行了更改,或者在早期版本中它没有保存在工作簿中。知道它是在哪个版本中制作的可能很重要,如果这个设置在 2003 年或更早的版本中是全局的(按系统保存而不是按工作簿保存),我不会感到惊讶。

也许他保存之前所做的任何更改都只是为了某种原因而没有触发自动重新计算,更改太小,或者更改是在 VBA 中完成的(我不知道 VBA 是否会触发重新计算)或者它只是与月相有关,如果你愿意的话可以说这是一个反常现象。

答案2

我唯一能想到的是,Workbook_Open() 事件以编程方式关闭了它们的自动计算,但不会关闭您的自动计算。也许它正在检查文件是否存在,如果存在,它会关闭计算。打开 VBA 编辑器,双击项目查看器中的 ThisWorkbook 项,然后查找 Workbook_Open 子例程。

答案3

发送给您的文件是什么格式?xlsx、xlsm 还是其他?

如果您首先将文件保存在硬盘上,您能重现该行为吗?

什么样的公式不会重新计算?它指的是哪些单元格?

首先,我会像 Steve 一样首先想到 Workbook_open 中有 vba。也许他们在 xlsx 中自定义了 XML?但我不知道您是否可以用它来更改计算模式。

答案4

我相信受保护的视图不允许公式计算。

MS 建议采用以下方法来禁用受保护的视图:

http://office.microsoft.com/en-us/excel-help/what-is-protected-view-HA010355931.aspx#BM5

  1. 单击“文件”选项卡。Microsoft Office Backstage 视图随即出现。
  2. 在 Backstage 视图中的“帮助”下,单击“选项”。出现“选项”对话框。
  3. 单击“信任中心”,然后单击“信任中心设置”。
  4. 单击“受保护的视图”。
  5. 做出您想要的选择。

尝试取消选中与 Outlook 电子邮件附件相关的框。

相关内容