有的时候,每当我们打开有VBA代码的Excel文件时,会看到提示,大概意思就是说“丢失了visual basic项目错误”的提示。结果,只能有只读的方式打开Excel。最后,Excel里面的VBA代码就找不到了、完全消失了,遇到这样的问题,如何解决呢?

以下是几种常见的针对不同版本的Excel的解决办法,也许对您有所帮助。

①宏安全性和警告疑难解答

适用于: Microsoft Office Word 2003

如果某些项目(如模板 、向导或自定义命令)无法按预期的方式工作,那么您可能正在运行 Microsoft Office 程序,且 Microsoft Visual Basic for Applications (VBA)  共享功能处于禁用状态。Office 中的许多功能是在 VBA 中创建的,或要依赖于 VBA 支持才能正确工作。如果您选择不安装 VBA 功能,将禁用或不安装这些从属应用程序和功能。

若要重新启用VBA,请执行这些步骤:

再次运行“Office 安装”程序。

操作方法

退出所有程序。

单击“开始”,单击“控制面板”,再单击“添加或删除程序”。 在“当前安装的程序”框中,单击“Microsoft Office 2003”或“Microsoft Office Word 2003”(取决于您将 Word 安装为 Office 组件的一部分还是单独程序),再单击“更改”。

在“维护模式选项”屏幕中,单击“添加或删除功能”,再单击“下一步”。

在“自定义安装”屏幕中,选中“选择应用程序的高级自定义”复选框,再单击“下一步”。

在“高级自定义”屏幕中,单击“Office 共享功能”旁的展开指示器。

单击“Visual Basic for Applications”旁的箭头,再单击“从本机运行”。

如果已经有人为您设置了 Office 安装,请与您的系统管理员或“信息技术”(IT) 专业人员联系,以了解在您运行 Office 时是否已禁用 VBA。

②Office XP Service Pack 3 修复的 Excel 2002 中的问题

当您对工作簿应用数字签名时,VBA 模块丢失。

当您通过使用 Excel 2002 对 Excel 2000 或 Excel 97 工作簿应用数字签名时,在您保存该工作簿之后,属于该工作簿的 VBA 模块可能会丢失。当您打开工作簿时,可能会收到以下 Microsoft Visual Basic 错误信息:

Error accessing file.Network connection may have been lost.

如果您单击“确定”,然后单击“启用宏”,可能会收到以下错误信息:

Errors were detected in 'file_name.xls,' but Microsoft Excel was able to open the file by making repairs listed below.Save the file to make these repairs permanent.

Lost Visual Basic project.

Lost ActiveX controls.