使用 Office 2016。我有一个带有 VBA 的 Excel 文件。每当我打开它时,我都会收到错误“找不到项目或库”。Excel 立即关闭。
我打开了 Excel,但没有打开文件,而是查看了“引用”。其中有一个标记为“未保存:VBA 项目”。当我尝试检查它时,出现了错误。(抱歉,我不记得它具体说了什么——是关于在文件打开时必须保存它。)
自此以后,“未保存:VBA 项目”不再出现。没有显示“丢失”的条目。
打开并修复(在实际版本上)会导致同样的崩溃。在安全模式下打开无法解决问题。但是,我可以在受保护的视图中打开它而不会崩溃。
我保存了一份没有使用 VBA 的副本并且它起作用了。
附加:工作簿中有一个连接到外部数据库的数据透视表。
还有一个 Workbook_Open 宏,它会询问用户是否要运行第二个更新数据透视表的宏。但是,当我阻止宏运行时,文件仍然会在没有 Workbook_Open 的情况下崩溃,因此数据透视表永远不会尝试更新。
答案1
我似乎找到了解决方法。在某个时候,当我在受保护的视图中打开文件时,我仍然可以转到 Visual Basic 编辑器并查看其模块。我导出了它们。
正如我所说,我已将副本保存为 xlsx 文件(不包含 VBA 模块)。我将模块导入此版本并将其保存为 xlsm。此版本似乎没有问题。
答案2
我经常在处理某个大型文件时遇到此错误。没有显示“缺失”引用。唯一的解决方法是让同事打开文件,启用内容并再次保存文件。
答案3
当一切都失败时,这对我有用。我打开了我的工作簿Excel 在线(Office 365,在浏览器中,无论如何都不支持宏),用新文件名保存它(仍然使用 .xlsm 文件扩展名),然后在桌面软件中重新打开。成功了。