![](/img/trans.png)
[英]Macro with Microsoft Excel 15.0 Object Library Compatibility with Microsoft Excel 14.0
[英]How do I keep Excel from binding to the Microsoft Word 15.0 Object Library?
我們有一個非常復雜的Excel 2010電子表格模板。 模板的每個新副本在其生命周期中都需要通過幾個人。
不幸的是,第一批使用該模板的人之一安裝了Office 365。 觸摸后,電子表格似乎綁定到Microsoft Word 15.0對象庫,這在Excel 2010 PC上不可用。 雖然可以通過在VBA代碼工具>引用中取消選中缺少的Word對象庫來修復單個損壞的文件,但我需要找到一種方法來防止這種情況發生。
我已經詳細閱讀了代碼,但是我找不到對MS Word對象庫的任何引用,那么是什么原因導致Excel首先綁定到它? 我能做些什么來阻止它嗎?
未經測試,但在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的引用; 無論如何,上面假設它確實如此。
要刪除,放置在模塊內:我知道這不會阻止它首先發生,但這可能有助於至少在下一個人之前刪除它。
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
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.