【问题标题】:How do I recover this VBA Project? Excel Error message: "Removed Part: /xl/vbaProject.bin part."如何恢复此 VBA 项目? Excel 错误消息:“已删除部分:/xl/vbaProject.bin 部分。”
【发布时间】:2011-07-04 16:42:26
【问题描述】:

我在其他论坛上看到过有关此问题的相关帖子(请参阅:http://www.mrexcel.com/forum/showthread.php?t=372534),但我尝试了所有我发现的一切都没有成功。

情况如下: 我有一个 .xlsm 工作簿(名为“PTPro.xlsm”),它在一个模块中包含大约 2000 多行 VBA 代码和 6-7 个大型用户窗体,每个用户窗体都有自己的巨大代码块。今天早些时候,我正在做这个项目,一切都很顺利。在整个过程中,我总共保存、关闭和打开了大约 20 次文件。我从来没有收到过错误消息。应该注意(如果重要的话)我是从 Excel 直接保存到闪存驱动器。

当我今晚把项目带回家时,我试图打开它以快速进行更改。这是我收到以下一系列错误消息的时候:

  1. “Excel 在 'G:\PTPro\PTPro.xlsm' 中发现不可读的内容。是否要恢复此工作簿的内容?如果您信任此工作簿的来源,请单击是。”

  2. 单击“是”后,将打开一个新对话框并显示以下错误消息:

  3. “Excel 能够通过修复或删除不可读的内容来打开文件。已删除部分:/xl/vbaProject.bin 部分。(Visual Basic for Applications (VBA))”​​

  4. 现阶段我唯一的选择是单击“关闭”以加载工作簿。

  5. 当我按 Alt+F11 查看 VBA 编辑器时,整个 VBA 项目(模块、用户窗体、宏等)完全消失了!!!

我已按照我能找到的所有步骤进行操作,包括更改 Excel 默认设置以启用所有宏并尝试在 4 台不同的计算机上打开文件(从硬盘驱动器和闪存驱动器)。我唯一能想到的我还没有尝试过的事情是在我今天正在使用的计算机上打开文件(顺便说一下,这是公共计算机实验室中的共享计算机)。直到星期一才可以选择。

应该注意的是,有几个子工作簿包含我的应用程序所需的中间步骤,这些步骤在一天中也经常打开和关闭。他们都工作得很好。

如果您对这个问题有任何经验,或者对如何恢复我编写的代码有任何想法,我将非常感激!!!

谢谢!!!

【问题讨论】:

标签: vba excel file-recovery corrupt-data


【解决方案1】:

当我尝试在客户端 PC 中运行我的 VBA 脚本时,我遇到了类似的问题。

问题是因为客户端 PC 没有安装 Microsoft Office Visual Basic 应用程序。通过运行office setup然后添加Visual Basic Application Feature,脚本运行成功。

【讨论】:

    【解决方案2】:

    问题是因为客户端 PC 没有安装 Microsoft Office Visual Basic 应用程序

    正确答案。 在设置菜单中为 Office 工具 类别选择从我的计算机运行所有程序

    开发人员...很难找到更好的错误消息吗?

    【讨论】:

      【解决方案3】:

      我的朋友说你在注册表编辑器HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\VBAOff 中发生了变化。在“数值数据”框中,从 1 更改为 0 或按删除键(单击鼠标右键并单击删除)。 退出注册表编辑器。

      【讨论】:

        【解决方案4】:

        !我必须为我的 xlsm 文件解决这个问题!

        VBA 代码是写在我的 mac 上的,我(因为我来自德国)在一些用户窗体名称中添加了一些“䔓ö”和“ü”(非常特殊的符号)。 现在 Windows 上的 Excel 2010 无法读取这些标志并且文件已损坏。 解决方案:我已将所有特殊符号(如“ä”、“ß”、“ü”……)替换为标准符号,然后瞧 -> 一切正常。

        希望这对你有帮助,因为它现在对我有帮助!

        对于这样一个愚蠢的错误和操作系统之间的这种不一致,我真的不得不大笑。

        【讨论】:

          【解决方案5】:

          检查您电脑上的语言设置是否与运行宏所需的相同。

          Macro 可能包含特殊字符,因此您 PC 的主要输入语言应与 Micro 相同。

          在我的例子中,宏是在日本编写的,其中几乎没有日语字符,而我电脑的主要输入语言是英语(印度)。删除它并只保留日语解决了我的问题。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2013-12-31
            • 2019-12-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2022-01-14
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多