【发布时间】:2021-09-09 18:32:54
【问题描述】:
我已经使用强制样式锁定保护了 word 中的工作表。我想制作一个宏,允许在具有原始格式的文档中粘贴,并且只允许粘贴来自其他来源的文本。
我想让它看起来像:
Public Sub Pasting()
If "pasting within document = true" Then
Set aDoc = ActiveDocument
aDoc.Unprotect
Selection.PasteAndFormat Type:=wdFormatOriginalFormatting
aDoc.Protect wdAllowOnlyReading, UseIRM:=False, EnforceStyleLock:=True
Else
Selection.Paste 'it will remove formating anyway because of file being protected
End If
End Sub
我不知道如何处理它以及如何设计条件语句。 请帮忙,谢谢:)
【问题讨论】:
-
为什么不简单地使用 Word 中已经内置的选项来根据源设置粘贴格式? 文件>选项>高级>剪切、复制和粘贴.
-
它在受保护的文件中不起作用。我想制作只能通过宏(格式)编辑的文件,而不是让别人通过从另一个来源粘贴来破坏格式。但我想让复制粘贴到由宏文本格式化的内部。
-
当您说“从文档粘贴”时,您是指同一个文档(存在检查代码的地方),还是 Word 以外的其他内容?
-
我的意思是只允许从当前文档粘贴到同一个文档的格式。并在我从另一个文档和另一个程序粘贴时禁用格式化。我想制作不能从外部使用格式的文档。
标签: vba ms-word copy-paste protected