我有一个允许用户打开Doc1并填充Doc2内容控件的进程。这适用于纯文本,但我遇到了富文本,更重要的是富文本内容控件内的图片。
不出所料,以下内容除了文字外没有设置任何内容:
ThisDocument.SelectContentControlsByTitle("ct2").Item(1).Range.Text = ThisDocument.SelectContentControlsByTitle("ct1").Item(1).Range.Text
我也尝试过:
ThisDocument.SelectContentControlsByTitle("ct1").Item(1).Range.Copy
ThisDocument.SelectContentControlsByTitle("ct2").Item(1).Range.Paste
虽然这似乎有效,但它不仅仅是复制文本和图片,还包括内容控件。所以我最终得到了ct2里面的ct1。
答案 0 :(得分:1)
我通过简单的测试就可以使用它。基本上,选择您的复制位置并将其删除。这会将光标准确地保持在您离开的位置。然后将其粘贴。此代码假定您要替换的图片位于初始图片之后。 I.E.您复制的图片在文档中的位置早于copy to
位置。
Public Sub MoveCCPic()
ThisDocument.SelectContentControlsByTitle("ct1").Item(1).Range.Copy
ThisDocument.SelectContentControlsByTitle("ct2").Item(1).Range.Select
ThisDocument.SelectContentControlsByTitle("ct2").Item(1).Delete
Selection.Paste
ThisDocument.SelectContentControlsByTitle("ct1").Item(2).Title = "ct2"
End Sub
如果图片框之间没有任何文字,您可能会遇到一些额外的代码。