卡伦(Karen)描述了一个问题,其中存储在公司网络上的共享工作簿会定期丢失其先前包含的所有数据。为了找出问题所在,Karen进行了测试,在其中她和她的同事试图同时打开文件并同时保存文件,但是所有测试都使数据完整无缺。她仍然报告说,有时候工作簿数据只是被删除了。擦干净。

这个问题也许是为什么许多人拒绝信任Excel中共享工作簿的主要示例。许多人都有相关的经验,其中数据已损坏,信息被覆盖或数据完全消失。所有问题都归因于共享工作簿这一事实,并且在关闭共享时问题消失了。

这导致了第一个建议:不要共享工作簿。如果您“不共享”它,则一次只有一个人可以打开工作簿,这降低了复杂性并减少了损坏的机会。

如果工作簿中包含的数据非常广泛,并且必须在多个用户之间共享,请考虑转换为旨在在多用户环境(例如Access)中实现更好的数据完整性的程序。

如果不可能,请考虑在Excel中启用“跟踪更改”(共享工作簿时可用的选项),以便维护更改历史记录。这使您可以查看上次更改工作簿的人。如果您打开工作簿并发现数据丢失,则检查更改历史记录实际上可能表明用户删除了数据(可能是无意间)。

当然,更改历史记录可能不会提供您希望的信息。共享工作簿可能导致数据损坏的原因是Excel允许用户使用数据的方式。在诸如Access之类的程序中,将逐条记录地获取并使用数据。用户正在使用记录时,没有其他用户可以更改记录,但是他们可以更改其他记录。

在Excel中,整个工作簿都将传输到用户的计算机,而不仅仅是工作簿中数据的单个记录。在共享工作簿方案中,这意味着实际上同时打开了工作簿的多个副本,并且Excel负责解决数据中的潜在冲突。请考虑以下情形:

  • 用户1打开工作簿,这意味着该工作簿的副本现在位于其系统内存中。

*十分钟后,用户2打开了共享工作簿。该版本现在位于用户2的系统内存中,不包含用户1在最近10分钟内所做的任何更改。 *五分钟后,用户2保存了共享工作簿,但继续工作。

  • 两分钟后,用户3打开共享工作簿。此版本是用户2刚刚保存的版本,不包括用户1所做的任何操作或用户2自上次保存以来所做的任何其他更改。

  • 十三分钟后,所有三个用户都保存了共享工作簿的版本并退出Excel。

在这30分钟的场景中,谁能告诉用户哪些更改保存在工作簿的最终版本中?应该保存哪些更改?当您考虑这种情况的后果(这种情况并不少见)时,您会看到为什么很多人建议不要在共享环境中使用Excel。

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

本技巧(2998)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本:

链接:/ excelribbon-Losing_Data_in_a_Shared_Workbook [在共享工作簿中丢失数据]。