Selection.Paste不保持完整的源格式

时间:2012-03-13 03:00:31

标签: vba word-vba

我有一个宏,它从一个小的word文档复制到一个主要的word文档,插入一个书签。作为副本的内容位于表中,并且具有包含数据和一些图像的各种行和列。

我的代码如下:

Set SmallDoc = Documents.Open("small.doc")
Selection.WholeStory
Selection.Copy

'Paste document content at bookmark
Set MasterDoc = Documents.Open("main.doc")
Selection.GoTo What:=wdGoToBookmark, Name:="placeToPaste"
Selection.Paste

问题:

格式化大部分都是保留的,除了图像传输并看起来好像被切断了。有没有办法保持整个源格式或某种方法来解决这个问题?

2 个答案:

答案 0 :(得分:1)

虽然我似乎无法确定是否可以确保保留源格式,但在我的特定情况下,这有助于保持图像正确显示:

'Opens and selects the current document
Dim CurrentDoc As Document
Set CurrentDoc = Documents.Open('c:/your/file/here.doc')
CurrentDoc.Select

'Cycle each image and change its formatting
For Each Pic In Selection.InlineShapes
    Pic.ConvertToShape.WrapFormat.Type = wdWrapSquare
Next

答案 1 :(得分:0)

尝试

Selection.PasteAndFormat wdFormatOriginalFormatting

在复制TextBox(绘图)和jpeg以及文本时,它对我有用。