如何保持Excel绑定到Microsoft Word 15.0对象库?

我们有一个非常复杂的Excel 2010电子表格模板。 模板的每个新副本都需要在其生命周期中通过几个人。

不幸的是,第一个使用该模板的人之一安装了Office 365。 在他触摸它之后,电子表格似乎绑定到Microsoft Word 15.0对象库,这在Excel 2010 PC上不可用。 虽然可以通过在VBA代码工具>引用中取消选中缺less的Word对象库来修复单个损坏的文件,但我需要find一种方法来防止这种情况发生。

我已详细查看了代码,找不到任何对MS Word对象库的引用,那么导致Excel绑定到它的原因是什么? 有什么我可以做,以防止它?

未经testing,但在Workbook_BeforeSave事件中添加类似这样的内容可能会起作用:

 With ThisWorkbook.VBProject.References For i = .Count To 1 Step -1 If InStr(.Item(i).Name, "Word") <> 0 Then .Remove .Item(i) Next End With 

免责声明:我没有Office 365,也不知道为什么会自动添加对Word 15.0的引用; 无论如何,上面假设它。

删除,放在模块内部:我知道这并不妨碍它在第一个地方发生,但这可能有助于至less在下一个人之前将其删除。

 Private Sub RemoveRef() Dim Reference As Object For Each Reference In ThisWorkbook.VBProject.References If Reference.Description = "Microsoft Word 15.0 Object library" Then ThisWorkbook.VBProject.References.Remove Reference End If Next End Sub