如何防止Excel在退出时修改文件?

Pas*_*sha 5 version-control microsoft-excel

每当我打开一个 Excel 文件然后在不更改任何内容的情况下关闭它时,Excel 就会修改该文件,而无需征得许可或发出任何警告。它只修改了偏移量 0x046C 处的 4 个字节,我怀疑这可能只是硬编码的最后修改时间或类似的东西。

问题是这确实搞砸了版本控制系统,因为文件的 MD5 总和发生了变化。

有什么办法可以阻止 Excel 这样做吗?据我所知,文件中没有公式链接或任何其他动态元素。

小智 6

我遇到了同样的问题,经过几个小时阅读了几个论坛和页面后,我找到了问题的根本原因和解决方案,因此我\xe2\x80\x99将在我阅读的论坛上复制并粘贴我的答案。

\n\n

Excel 文件(特别是 Excel 2003 xls 文件)似乎存在问题,每当在 Excel 中打开它们时,即使它们没有更改且没有保存,Excel 也会自动更新某些文件。元数据,例如“文档属性和个人信息”和“上次访问的统计信息”,因此文件每次打开时都会发生一点变化,这使得MD5也会发生变化。

\n\n

解决方案:

\n\n

避免此问题的一种方法是删除文档属性和个人信息

\n\n

在Excel 2007Excel 2013/2010中从 Office 文档中删除隐藏数据和个人信息。

\n\n

避免这种情况的其他方法是使用.xlsx文件。我一直试图在.xlsx文件中复制这种行为,但它似乎只发生在.xls(2003)文件上。

\n