Word VBA-消除浮动对象表
我有一大堆Word文档,其中的表有些“损坏”。我已经能够自动完成大部分修复过程,但有一个问题仍然无法解决 许多表都是浮动对象-当我显示隐藏的格式标记时,我看到表旁边有一个锚点。我不能像这样留下文件,我需要把所有的东西都内联起来 我确实有一段代码可以“修复”这个问题,但我认为这不是一个好的解决方案。通过将文本换行从“None”(默认值-我希望它是什么)更改为“Around”并返回到“None”,这就得到了修复。代码是Word VBA-消除浮动对象表,vba,ms-word,Vba,Ms Word,我有一大堆Word文档,其中的表有些“损坏”。我已经能够自动完成大部分修复过程,但有一个问题仍然无法解决 许多表都是浮动对象-当我显示隐藏的格式标记时,我看到表旁边有一个锚点。我不能像这样留下文件,我需要把所有的东西都内联起来 我确实有一段代码可以“修复”这个问题,但我认为这不是一个好的解决方案。通过将文本换行从“None”(默认值-我希望它是什么)更改为“Around”并返回到“None”,这就得到了修复。代码是 Selection.Tables(1).Rows.WrapAroundText
Selection.Tables(1).Rows.WrapAroundText = True
Selection.Tables(1).Rows.WrapAroundText = False
我相信有更好的办法。有人知道会有效果吗?谢谢 您是否可以发布一个已损坏的示例文档以供下载?听说你找到了锚,单词中新行的符号,我想这是最好的方法 您的代码似乎在您选择每个表时,或在您的代码选择它时,查看每个表(?) 将此添加到代码中以修复任何潜在问题
For Each Table In Selection.Tables
If Table.Rows.WrapAroundText = True Then
Table.Rows.WrapAroundText = True
Table.Rows.WrapAroundText = False
End If
Next
我不知道为什么拍打
WrapAroundText
标志可以解决您的问题,VBA有很多这样的怪癖
将此方法自动化到文档中的所有表相当简单:
Dim i as Integer
For i=1 to Len(ActiveDocument.Tables)
ActiveDocument.Tables(i).Rows.WrapAroundText = True
ActiveDocument.Tables(i).Rows.WrapAroundText = False
Next i
Hy@蓝莓,如果这个或任何答案解决了你的问题,请考虑点击复选标记。这向更广泛的社区表明,你已经找到了一个解决方案,并给回答者和你自己带来了一些声誉。没有义务这样做。