如何修复损坏的(VBA)Excel / XLSM?

时间:2019-03-07 11:22:49

标签: excel vba

Excel(2010) 中进行编程时,我已经多次崩溃了 XLSM 文件。 (最后在调试期间) 结果是,要么是

  • 报告为损坏(有时可以修复)或
  • 崩溃了整个Excel应用程序:-/

如何获取原始或相同版本或进行修复? (我们有一个版本跟踪系统,但是有时丢失的更改会很大)

3 个答案:

答案 0 :(得分:1)

打开一个新工作簿,导航到损坏的文件,单击“打开并修复”(不仅仅是打开)。

enter image description here

答案 1 :(得分:0)

幸运的是,我们已经安装了一些 Excel 2016 ,可以将其打开并保存为相同的 XLSM >文件。之后,可以通过 Excel 2010 毫无问题地打开它:) (在 Excel 2016 中,可能还有一个 Open and Repair...选项-如ryguy72所述)。

一般来说,最好有一个版本系统,例如Mercurial,Git或某些版本化DMS等!)

Btw:我们也可以在 LibreOffice 6.0.6.2 64bit )中打开并保存它,但是非< em> LibreOffice 兼容的格式(例如图像与左侧行组合拢),功能(例如命名表)等,因此生成的文件对我们不是很有用(但是对于其他人来说,这可能就足够了-无需大量许可/安装麻烦。)

答案 2 :(得分:0)

有时可以在打开工作簿时修复VBA代码执行。 如果发生automation error,则可能是由于某些未编译的代码(结合了诸如 Open Select ,< em>激活事件或(重新)计算公式。

因此,这在很多情况下(尤其是在开发过程中)会有所帮助:

  1. 重命名 MyFile.xlsm 文件MyFile2.xlsm
    • =>因此,Activate Macro对话框将在下次打开时出现
  2. 不要Activate Macro ,而是按F11来(编辑代码或/和) VBA Editor => Menu => Debugging => Compile ... 代码
  3. 关闭文件,然后重命名回MyFile.xlsm
  4. 打开时:选择Activate Macro