使用VBA删除格式但保留粗体文本

时间:2017-02-22 11:27:55

标签: vba ms-word

我使用此宏清除所有文字格式并将其粘贴到另一个文档:

Selection.Copy
Windows(1).Activate
Selection.PasteAndFormat (wdFormatPlainText)

它工作正常,但我需要纯文本,其中有关粗体字符的信息为红色。换句话说 - 我需要删除所有文本格式,但使粗体字符变为红色。 我试图通过char迭代Selection char,但没有成功。

1 个答案:

答案 0 :(得分:0)

删除所有格式 不可能,但将样式设置为正常即可。

 Selection.Copy
 Windows(1).Activate
 Windows(1).Document.Bookmarks.Add ("xx")
 Selection.PasteAndFormat (wdFormatPlainText)
 Windows(1).Document.Bookmarks.Add ("xxx")
 Selection.Start = Windows(1).Document.Bookmarks.Item(1).Start
 Selection.End = Windows(1).Document.Bookmarks.Item(2).Start
 Selection.Style = wdStyleNormal
 Selection.Font.Bold = True
 Selection.Font.Color = wdColorRed
 Windows(1).Document.Bookmarks.Item(1).Delete
 Windows(1).Document.Bookmarks.Item(1).Delete