我遇到的问题是我在excel为我们的一个办公室开发的工具。它是一个足够大的文件,里面有几个宏,但它每天都很流畅。
但是每隔几天文件都会出错“无法找到项目或库”,文件会崩溃。我知道标准指南是当出现此错误时,它将转到vba> tools> referneces并取消选中缺少的库,但这不是这里的情况。简单地说,当发生这种情况时,文件崩溃并重新启动,如果它发生一次,则每次打开文件的其他尝试都会导致崩溃时出现同样的错误。我的意思是文件可以绝对正常,你将保存它,回到它并发生错误。因此,我总是必须恢复绝对破坏它的文件,但是我至少可以从用户上传的信息中恢复并将其复制到模板中。
所以我有两个问题是导致这种情况发生的原因?我和其他办公室都使用相同版本的excel,因此兼容性不应成为问题。
2个问题是可以采取哪些措施来防止此错误发生。
答案 0 :(得分:0)
这对我有用:
在VB中,转到工具»参考 1)取消选中库“Crystal Analysis Common Controls 1.0”。或任何图书馆。 请留下这5个参考文献: 1)Visual Basic For Applications(这是定义VBA语言的库。) 2)Microsoft Excel对象库(这定义了Excel的所有元素。) 3)OLE自动化(它指定用于链接和嵌入文档以及用于其他应用程序的自动化的类型以及Excel用于与外界通信的COM系统的“管道”。) 4)Microsoft Office(这定义了所有Office程序(如命令栏和命令栏控件)通用的内容。) 5)Microsoft Forms 2.0如果您使用的是用户表单,则必须使用此表单。此库定义了诸如用户表单和可以放置在表单上的控件之类的内容。 然后保存。
答案 1 :(得分:0)
我有类似的讨厌问题。
首先要做的是使用CodeCleaner a free utility from AppsPro 这将导出您的模块,然后重新导入它们,因为在内部它们会获得大量二进制文件" lint"这可能会导致问题。
建议的第二件事是开始分解您的代码库。因此,开始删除模块以查看哪个模块是违规者。可怕我知道,但你怎么能说出问题所在。
第三个建议是始终完全符合您的职能。因此,而不是Len(sMyString)编写VBA.Len(sMyString)来帮助防止错误的编译错误。
答案 2 :(得分:0)
我确实有这个问题。如上所述,一旦发生错误,就会导致永久性的“不可修复”循环。我使用powerquery和链接的数据,这似乎是随机地“损坏”文件,如所描述的-最常见的是excel由于某种原因而崩溃。
我发现以下两种方法均可工作: -在局域网以外的另一台计算机上打开文件。这个 似乎是关键要求。 -使用“ Excel Online”打开文件
在每种情况下,只需打开文件并用新名称保存即可。将新文件移回工作PC,它将再次完美打开。
在极少数情况下(如果使用了powerquery),必须在保存新文件之前“刷新所有”数据连接。
作为奖励,新文件通常比原始文件小。