不知何故,我的 MS Word 2016(Office 365)配置(在 Windows 10 下,当前级别)设置为每次我复制选定的材料并将其粘贴到其他地方时,源材料都会变成 OLE(源)对象/书签。我可以手动删除书签,但这样做变得极其乏味。我搜索了某种方法来控制这种行为,但一直找不到。
我的问题是;在 MS Word 文档中选择和复制材料时,如何关闭 OLE 对象(源)定义的创建?
答案1
这是一个宏,用于在创建书签后立即自动删除书签。它不会删除其他书签,只会删除以“OLE_LINK”开头的书签。
将其放在 Normal.dot 文件中是最好的。要找到它,请在功能区中启用“开发人员”选项卡,然后单击“Visual Basic”按钮。在那里,您可以在“Normal”标题中找到一个名为“ThisDocument”的文件。只需在该文件中输入以下代码,然后保存即可。
Sub EditCopy()
Selection.Copy
DoEvents
Application.OnTime Now + TimeValue("00:00:01"), "DeleteOleBookmarks"
End Sub
Sub DeleteOleBookmarks()
Dim bmIndex As Integer
Dim bmType As String
DoEvents
For bmIndex = ActiveDocument.Bookmarks.Count To 1 Step -1
bmType = UCase(Left(ActiveDocument.Bookmarks(bmIndex).Name, 8))
If bmType = "OLE_LINK" Then
ActiveDocument.Bookmarks(bmIndex).Delete
End If
Next bmIndex
End Sub
该代码是从这里复制的:
http://intrepidis.blogspot.co.uk/2018/05/ms-office-word-copy-text-and-it-puts.html