2017-06-19 51 views
0

我现在有像这样的行和列的文件格式(这大约是100行6列在实际的例子)一个字:字VBA:需要删除帧,但保持格式化

a b c d 
1 x x x x 
2 x x x x 
3 x x x x 
4 x x x x 

万物皆有一个单独的框架,即在这个例子中有24个框架。但是,当我删除任何框架时,格式不会保持不变(文字倾向于位于Word文档的左上角)。

这是一个问题的原因是因为我无法通过键入'帧格式'来添加到文档中。

我将文档从xps转换为docx。

我试过这个VBA代码,确实删除了帧但没有保留格式。

Sub CleanUpExport() 
Dim aFrame As Frame 
Dim p As Paragraph 
Dim l As Single 

For Each aFrame In ActiveDocument.Frames 
    aFrame.RelativeHorizontalPosition = wdRelativeHorizontalPositionPage 
    l = aFrame.HorizontalPosition 
    For each p In aFrame.Range.Paragraphs 
     p.LeftIndent = l 
    Next p 
    aFrame.Delete 
Next aFrame 
End Sub 

任何帮助表示赞赏。

回答

0

如果您删除帧之前复制帧的内容,然后在同一位置粘贴,你应该得到相同的格式之前

+0

有1500个字,也约1500架,这不会是实际的。我试图复制整个文档并使用各种粘贴特殊选项,但都没有工作。一些删除了帧,但没有(除了图片选项)保持格式。但我不能选择图片选项,因为我需要之后编辑文档。 – Monty

+0

我不确定我是否完全理解您的问题,但我想您的片段可以调整为逐帧显示,并通过剪切和粘贴替换它们的内容 – Sam